【发布时间】:2016-06-03 16:46:21
【问题描述】:
我是淘汰赛的新程序员。 这里有一个关于 ko.observableArray 练习时的问题。 我为初始数据提供了一个从零开始的索引数组,该数组将在单击按钮时显示为 JSON。 但是当我尝试更新输入字段中的任何值但单击按钮后无法获取新的 JSON 时。
我认为问题在于我的数组中没有索引。单击后如何获取新的 JSON
function ViewModel(inputs){
this.inputs = ko.observableArray(inputs);
this.getData = function(){
this.jsonData(ko.toJSON(this.inputs));
};
this.jsonData = ko.observable('');
};
var initialData = [ 'Jan', 'Feb', 'Mar', 'etc' ];
var viewModel = new ViewModel(initialData);
ko.applyBindings(viewModel);
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/2.2.1/knockout-min.js"></script>
<ul data-bind="foreach: inputs">
<li>
The current item is: <input type='text' data-bind="value: $data"></b>
</li>
</ul>
<textarea rows='5' cols='60' data-bind='value: jsonData'> </textarea>
<button data-bind='click: getData'>get Data</button>
【问题讨论】:
标签: javascript arrays json knockout.js