这是如何绑定 ko.observableArray 字符串的后续内容?
如何将可编辑的可观察字符串数组绑定到一组输入框?我不想绑定到对象数组,因为从服务器发送的底层 JSON 是字符串数组。
以下示例不起作用(在http://jsfiddle.net/LDNeA/尝试)。用可观察字符串绑定对象数组是可以的,但是直接绑定可观察字符串数组是行不通的,而且模型没有更新。
重要的是文本框中的条目被映射回模型。
JS:
var ViewModel = function() {
this.value = ko.observable("hi")
this.array1 = ko.observableArray([ko.observable("hi"), ko.observable("there")]);
this.array2 = ko.observableArray([{ data: ko.observable("hi") }, { data: ko.observable("there") }]);
};
ko.applyBindings(new ViewModel());
HTML:
<div class='liveExample'>
<p><input data-bind='value: value' /></p>
<div data-bind="foreach: array1">
<p><input data-bind='value: $data' /></p>
</div>
<div data-bind="foreach: array2">
<p><input data-bind='value: data' /></p>
</div>
</div>
<pre data-bind="text: ko.toJSON($data)"></pre>