0

使用 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,并且从 Network 选项卡中,我可以看到单击上一个导航按钮时正在发出 Get 请求,但在下一个导航上没有发出请求。

有任何想法吗?

4

1 回答 1

1

问题是,在进行 Ajax 调用后,我将 totalServerItems 设置为:

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

那是行不通的,因为 data.Vouchers 只包含当前页面的记录项目。解决方法是更改​​为以下行:

self.pagingOptions.totalServerItems(data.TotalCount);
于 2018-03-26T06:51:20.280 回答