使用Kendo UI网格构建列表.尝试设置kendo.data.DataSource对象的pageSize参数.
我最初可以将pageSize设置为变量(例如varPageSize = 20).我可以通过单击按钮来增加varPageSize变量(例如varPageSize + = 10).但是,网格的pageSize不会更新.
变量赋值:
var varPageSize = 20;
网格的部分代码:
dataSource = new kendo.data.DataSource({ pageSize: varPageSize, ... });
Click事件处理程序的代码
$('#moreButton').on('click', function () { varPageSize += 10; //print to the console to monitor the value of the varPageSize variable console.log(varPageSize); });
我的问题是我应该如何实现对pageSize参数的变量赋值,以便可以更新它以响应前端事件.
我最初的想法是在更新变量值后我没有更新网格.来自Telerik的Kendo UI论坛帖子说要使用grid.refresh(); - 但是网格对象无法识别.refresh().我也在寻找关于这个主题的其他问题,我很难确定哪一个要翻译成我的解决方案 - 每个现有帖子都是我不使用的变体(例如.pageSize();)
任何洞察或推动正确的方向是值得赞赏的.
谢谢!
设置时pageSize: varPageSize
,您将在执行时分配varPageSize的不可变值.您没有为varPageSize分配引用.因此,pageSize
当您更改时不会更新varPageSize
(这是JavaScript的工作方式,而不是特定于Kendo UI).
为了做你想做的事,你需要dataSource.pageSize(varPageSize)
在更改之后调用,然后grid.refresh()
将此更改应用于网格.
看一下这个小提琴的例子.