1
我試圖使用嵌套options
,(optionsText
,optionsValue
)和value
一個foreach
在KO結合內部結合。KnockoutJS的foreach含選項綁定更新不及時的視圖模型
我期待以下代碼將選擇框綁定到ViewModel的相關Item
,但它似乎沒有更新視圖模型中的值 - 它們始終保持爲我用「n/a」初始化它們的值- 我怎樣才能做到這一點?
我已經建立了一個HTML頁面,如下所示:
<table>
<tbody data-bind="foreach: Items">
<tr>
<td>
<select data-bind="options: $parent.Countries, optionsText: 'Name', optionsValue: 'Code', value: 'Country'"></select>
</td>
<td>
<span data-bind="text: Country"></span>
</td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="2">
<a href="#" data-bind="click: AddItem">Add item</a>
</td>
</tr>
</tfoot>
</table>
用下面的JavaScript:
var countries = ko.observableArray([
{ Name : "United Kingdom", Code : "UK", Population : "1 Monarch" },
{ Name : "Australia", Code : "AU", Population : "22 million kangaroos" },
{ Name : "Antarctica", Code : "AQ", Population : "100,000 penguins (0 polar bears)" }
]);
var item = { Country : "n/a" };
var ViewModel = function() {
this.Countries = countries;
this.Items = ko.observableArray();
this.AddItem = function() {
this.Items.push(ko.mapping.fromJS(item));
};
};
var vm = new ViewModel();
ko.applyBindings(vm);
的小提琴是here
謝謝 - 這是問題所在。繁瑣! – Darbio