使用KOGrid我在JS视图模型中有以下内容:
self.gridOptions = {
data: self.recs,
columnDefs: self.columnDefs,
autogenerateColumns: false,
showGroupPanel: false,
showFilter: true,
filterOptions: self.filterOptions,
enablePaging: true,
pagingOptions: self.pagingOptions,
sortInfo: self.sortInfo,
rowHeight: 35,
selectWithCheckboxOnly: true,
selectedItems: self.selected,
canSelectRows: true,
displaySelectionCheckbox: true,
afterSelectionChange: function () {
var selectedParent = self.selected()[0];
if (!selectedParent) {
return [];
}
var selectedTransactions = selectedParent.editableTransactions();
self.selectedChildren(selectedParent.editableTransactions());
return true;
},
multiSelect: false,
};
我可以直接输入页码来浏览页面。导航后退按钮工作正常,但单击导航下一页或最后一页不执行任何操作。
我在同一网站的另一个页面上有另一个KOGrid实例,并且运行正常。我使用过Chrome devtools,在“网络”标签中,我可以看到点击导航上一个按钮时发出了Get请求,但下次导航时没有请求。
有什么想法吗?
答案 0 :(得分:1)
问题是,在进行Ajax调用之后,我使用以下内容设置totalServerItem:
self.pagingOptions.totalServerItems(data.Vouchers.length);
这不起作用,因为data.Vouchers只包含当前recs页面的项目。修复方法是更改为以下行:
self.pagingOptions.totalServerItems(data.TotalCount);