【发布时间】:2014-06-18 08:58:08
【问题描述】:
我有以下代码应该绑定 observables 的 observableArray。
<button data-bind="click: loadTag">Upload</button>
<span data-bind="foreach: langs">
<input data-bind="value: $data, valueUpdate: 'afterkeydown'"/>
</span>
<div data-bind = "text: ko.toJS(langs)">
function vm() {
var self = this;
this.langs = ko.observableArray([]);
this.initiate = function(){
self.langs = ko.observableArray([]);
for (var i = 0; i < 4; i++){
self.langs.push(ko.observable('start'));
}
}
this.initiate();
this.loadTag = function(){
for (var i = 0; i < 4; i++){
self.langs()[i](i);
}
}
}
ko.applyBindings(new vm());
JS 小提琴是available。
正如您在开始时看到的那样,它正确绑定,并且在 loadTag 时绑定也有效。但问题是当我修改输入中的元素时,绑定不会传播。我认为我错过了一些非常简单的东西,但找不到什么。
【问题讨论】:
标签: javascript knockout.js ko.observablearray