当 select 标签中有内部模板(dom-重复)时,Polymer 1.0 读取 select 值
Polymer 1.0 reading select value when there is an inside template(dom-repeat) in select tag
我在使用 Polymer 1.0 元素时遇到问题。
我必须在 select 中打印书籍大小(A5、A4)的每个选项和每个 selection 的额外价格(此信息来自从 _returnSelItemDataArr 返回的 js 数组)。
数组数据看起来像这样:
_returnSelItemDataArr: [array[id, name, extra], array[id, name, extra]].
这里有一些源代码:
<select id="sizeSelect" value="{{itm.id::change}}" aria-labelledby="sizeLabel">
<template is="dom-repeat" items="{{_returnSelItemDataArr(item, 'sizes')}}" as="itm">
<option value="{{index}}" selected$="[[_computeSelected(index, itm)]]">{{itm.name}} (+{{itm.extra}} lei)</option>
</template>
</select>
Select compute function:
_computeSelected: function(index, itm) {
return index+1===parseInt(itm.id, 10);
},
问题是当我尝试通过以下代码从“#sizeSelect”获取 selection 值时:this.$.sizeSelect.value
select 值的控制台输出是 undefined
。
使用带有 dom-repeat 选项的聚合物时,访问 select 值似乎是一个问题。
有人碰巧知道如何正确访问 select 值吗?
注意:我必须提到 'item' 是我的产品,它是一个包含有关产品的所有信息的对象
答案:
要 select shadow-dom 下的 id 元素,您将必须使用此运算符 $$
。对我来说是这样的:this.$$('#sizeSelect').value
.
答案:
要 select shadow-dom 下的 id 元素,您将必须使用此运算符 $$
。对我来说是这样的:this.$$('#sizeSelect').value
.
我在使用 Polymer 1.0 元素时遇到问题。
我必须在 select 中打印书籍大小(A5、A4)的每个选项和每个 selection 的额外价格(此信息来自从 _returnSelItemDataArr 返回的 js 数组)。
数组数据看起来像这样:
_returnSelItemDataArr: [array[id, name, extra], array[id, name, extra]].
这里有一些源代码:
<select id="sizeSelect" value="{{itm.id::change}}" aria-labelledby="sizeLabel">
<template is="dom-repeat" items="{{_returnSelItemDataArr(item, 'sizes')}}" as="itm">
<option value="{{index}}" selected$="[[_computeSelected(index, itm)]]">{{itm.name}} (+{{itm.extra}} lei)</option>
</template>
</select>
Select compute function:
_computeSelected: function(index, itm) {
return index+1===parseInt(itm.id, 10);
},
问题是当我尝试通过以下代码从“#sizeSelect”获取 selection 值时:this.$.sizeSelect.value
select 值的控制台输出是 undefined
。
使用带有 dom-repeat 选项的聚合物时,访问 select 值似乎是一个问题。
有人碰巧知道如何正确访问 select 值吗?
注意:我必须提到 'item' 是我的产品,它是一个包含有关产品的所有信息的对象
答案:
要 select shadow-dom 下的 id 元素,您将必须使用此运算符 $$
。对我来说是这样的:this.$$('#sizeSelect').value
.
答案:
要 select shadow-dom 下的 id 元素,您将必须使用此运算符 $$
。对我来说是这样的:this.$$('#sizeSelect').value
.