2

我的视图模型有两个数组(简化版)

array_a = ko.observableArray(["a", "b", "c"]);
array_b = ko.observableArray(["Foo", "Bar", "Bash"]);

我想在绑定到另一个值的同时迭代一个,所以我有这个

<ul data-bind="foreach: array_a">
<li><input data-bind="value: array_b()[$index()]" type="text"></li>
</ul

这显示了值,但在输入文本更改时似乎没有更新它?

4

1 回答 1

3

如果你想在你的中拥有可更新的值,array_b你需要将这些值包装到 observables 中(因为如果绑定源不是 ko 绑定是一种方式ko.observable)。

所以这应该工作:

array_b: ko.observableArray([ko.observable("Foo"), 
                             ko.observable("Bar"), 
                             ko.observable("Bash")])

硒在行动中JsFiddle

于 2012-10-24T09:53:52.637 回答