我正在尝试在 listView 上实现服务器端分页,但它只呈现第一页。我已经做了一些调试,我发现在我的寻呼机的更改事件中,它从未在 dataSource 上调用 read 所以我决定像这样手动调用它:
App.photoLineupPager = $("#photo-lineup-pager").kendoPager({
"dataSource": $("#photo-lineup").data("kendoListView").dataSource,
"change": function (e) {
e.preventDefault();
$("#photo-lineup").data("kendoListView").dataSource.read();
}
}).data("kendoPager");
它现在到达端点,返回预期的数据,并且加载图标出现在 listView 的位置。但是,如果我调用,listView 不会在我的控制台中显示任何数据:
$("#photo-lineup").data("kendoListView").dataSource.data()
它在返回的对象中有值,但如果我调用:
$("#photo-lineup").data("kendoListView").dataSource.view()
返回的对象中没有任何值。我相信这就是为什么我的 listView 没有在第一页之后呈现任何内容。所以我有几个问题:
- 为什么填充了数据而视图没有填充?
- 我如何解决它?
更新 所以实际上只是将 dataSource 上的serverPaging属性设置为 true 的问题。一旦我指定我不再需要在寻呼机的更改事件中调用读取事件。