【发布时间】:2015-08-26 20:43:55
【问题描述】:
我正在使用淘汰赛的foreach 迭代一个对象。在这个 foreach 中,我渲染了一个表格,每个表格都有一个下拉列表。
我需要选择的值,但是 ko.observable() 在 foreach 中不起作用,因为它同时设置每个选择值。我需要每个字段的单独选择值,而不是将每个选择设置为相同的值。
有解决办法吗?
<!--ko foreach: {data: thing, as: 'blah'}-->
<div data-bind="text: JSON.stringify(blah)"></div>
<select data-bind="options: $root.countries, optionsText: 'name', optionsValue: 'id', value: $root.selectedChoice, optionsCaption: 'Choose..'"></select>
<br/>
<input type="button" data-bind="click: $root.sendMe, enable: $root.selectedChoice" Value="Click Me"/>
<!--/ko-->
This is a fiddle用一个简单的例子来演示。
【问题讨论】:
-
您需要
thing对象的selectedChoice成员。 -
不,它仍在同时更改所有值,即使在被循环的对象内也是如此。
标签: javascript knockout.js foreach