我有一个简单的选择多个选项绑定如下:
<select multiple="multiple" width="50" data-bind="options: propositions, optionsText: function(item){ return item.name }, optionsValue: function(item) { return item.name }"></select>
这可以在选项项的value属性上设置item.name,如下所示:
<option value=" item.name value here ... "> item.name also here </option>
我想要的是设置这样的自定义属性:
<option value=" item.name " data-value = " item.name "> item.name also here </option>
是否可以告诉knockout在绑定中设置属性数据值,你会怎么做?
答案 0 :(得分:14)
您可以使用options
而非使用foreach
绑定。在这种情况下,您可以将任何属性分配给选项元素:
<select multiple="multiple" width="50" data-bind="foreach: propositions">
<option data-bind="value: name, attr: {'data-value': name}"></option>
</select>