当我显示下拉列表时,我可以选择并让用户选择。如下所示
<select data-bind="options : $parent.items, optionsText :'name', optionsValue:'id', value : status"></select>
但是我想从商品ID中显示商品名称呢?
由于
答案 0 :(得分:1)
不确定我是否理解了这个问题,请检查这是否是您想要的:
<select width="50" data-bind="foreach: items">
<option data-bind="value: id, text:name, attr: {name: id}"></option>
</select>
答案 1 :(得分:0)
3个选项(我更喜欢#2):
(1)使optionsValue:'name'而不是id。通过对你的问题的描述,这是一个有效的解决方案,但我愿意打赌,这不是你想要的。
小提琴:http://jsfiddle.net/simonlevasseur/3DYh4/
<select data-bind="options : items, optionsText: 'name', optionsValue: 'name', value : status"></select>
<span data-bind="text: status"></span>
(2)从绑定中删除optionsValue,这样您将保存整个对象,而不是仅保存id。
小提琴:http://jsfiddle.net/simonlevasseur/nCNXJ/
<select data-bind="options : items, optionsText: 'name', value : status"></select>
<span data-bind="text: status().name"></span>
(3)在列表中搜索与id匹配的项目。
小提琴:http://jsfiddle.net/simonlevasseur/aW23N/
var color = ko.utils.arrayFirst(colors, function (color) {
return color.id === status;
});