Mvvm 如何使用knockout.js观察jqgrid数据?
我正在使用knockout.js创建jqgrid,并使用ObservalArray填充数据。 (使用敲除jqGridBinding插件) jqgrid数据的数组:Mvvm 如何使用knockout.js观察jqgrid数据?,mvvm,jqgrid,knockout.js,knockout-2.0,jqxgrid,Mvvm,Jqgrid,Knockout.js,Knockout 2.0,Jqxgrid,我正在使用knockout.js创建jqgrid,并使用ObservalArray填充数据。 (使用敲除jqGridBinding插件) jqgrid数据的数组: var initialData = [{ id: ko.observable(1), name: ko.observable("Well-Travelled Kitten"), sales: ko.observable(352), price: ko.observable(75.95) }]; fun
var initialData = [{
id: ko.observable(1),
name: ko.observable("Well-Travelled Kitten"),
sales: ko.observable(352),
price: ko.observable(75.95)
}];
function viewModel() {
var self = this;
self.items = ko.observableArray(result);
}
ko.applyBindings(new viewModel());
HTML
<table>
<tbody data-bind="foreach: items">
<tr>
<td><input data-bind="value: id"/></td>
<td><input data-bind="value: name"/></td>
<td><input data-bind="value: sales"/></td>
<td><input data-bind="value: price"/></td>
</tr>
</tbody>
</table>
<table id="items" data-bind="grid: { data: items }" >
<thead>
<tr>
<th data-field="actions" style="width:27px;" data-sortable="false"></th>
<th data-field="name" width="150px" data-editable="true">Item Name</th>
<th data-field="sales" data-editable="true">Sales Count</th>
<th data-field="price" data-editable="true">Price</th>
</tr>
</thead>
</table>
项目名称
销售额
价格
现在它填充jqgrid中的数据,如果我在外部更改数据,它也会反映在网格中,但当我使用“cellEdit”更改jqgrid中的数据时,它不会反映。JQwidgets提供了我想要的相同功能,但它是付费的。最终我解决了这个问题,我再次使用“aftersavecell”事件在数组中推送新数据,这样每次可观测数组更新时都可以这样做。您可以为自己的问题添加答案,可能需要更多细节和代码示例。