点击下一页按钮的KOGrid什么都不做

时间:2018-03-21 17:01:02

标签: knockout.js kogrid

使用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请求,但下次导航时没有请求。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

问题是,在进行Ajax调用之后,我使用以下内容设置totalServerItem:

self.pagingOptions.totalServerItems(data.Vouchers.length);

这不起作用,因为data.Vouchers只包含当前recs页面的项目。修复方法是更改​​为以下行:

self.pagingOptions.totalServerItems(data.TotalCount);