How to change page size dynamically in Kendo UI Grid
我的Kendo UI网格显示了1000多个数据。 我还有一个用于不同页面大小的下拉列表,分别为15、25、50、100。选择页面大小时,如何更改Kendo UI网格的页面大小?
这是使用ASP.NET MVC Helper的最新消息
1 | .Pageable(pager => pager.PageSizes(new int[] {20, 50, 100})) // Enable paging |
您可以在组合框更改事件中设置页面大小。 (另请参见JSBin示例。)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | $("#comboBox").kendoComboBox({ dataTextField:"text", dataValueField:"value", dataSource: [ { text: 1 }, { text: 2 }, { text: 3 }, { text: 4 }, { text: 5 } ], change: function(e) { var grid = $("#grid").data("kendoGrid"); grid.dataSource.pageSize(parseInt(this.value())); // this.value() being the value selected in Combo } }); |
通过在js中执行以下操作,它也已内置到最新版本的网格中
1 2 3 | pageable: { pageSizes: [10, 25, 50, 100] } |
http://docs.kendoui.com/api/web/pager
扩展Rick Glos的答案:
您可以将Pageable PageSizes设置为通用对象的数组,因此您可以具有"全部"选项,而不必在JavaScript中设置pageSizes。
1 | .Pageable(pager => pager.PageSizes(new object[] {20, 50, 100,"All"})) |
Rick很好地告诉了它一个更多的解释,如果有人错过了在这里要做的事情,这是一个代码片段,它知道如何在短时间内完成在哪里做的事情。
1 2 3 4 5 6 7 8 9 10 11 12 13 | @(Html.Kendo().Grid(Model) .Name("SiteUserGrid") .Columns(columns => { columns.Bound(u => u.LastName).Title("Last Name"); columns.Bound(u => u.FirstName).Title("First Name"); columns.Bound(u => u.UserName).Title("User Name"); columns.Bound(u => u.EmailAddress).Title("Email Address"); columns.Bound(u => u.AccessLevel).Title("Access Level"); columns.Bound(u => u.Status).Title("Status"); columns.Bound(u => u.UserId).Filterable(f => f.Enabled(false)).ClientTemplate(actionColumnTemplate).Title("Action").Sortable(false).Width(190); }) .Pageable(pageable => pageable.ButtonCount(10)) |
.Pageable(pager => pager.PageSizes(new int [] {5,10,15,20,30,50,100}))
1 2 3 4 5 6 7 8 9 10 | .Selectable(selectable => selectable.Mode(GridSelectionMode.Single)) .Sortable() .Filterable(filterable => filterable .Extra(false) .Operators(operators => operators .ForString(str => str.Clear() .StartsWith("Starts with") .Contains("Contains") .IsEqualTo("Is equal to") )) |
希望这可以帮助
http://docs.kendoui.com/api/wrappers/php/Kendo/UI/GridPageable
1 2 | $pageable = new \\Kendo\\UI\\GridPageable(); $pageable->pageSizes(array(20,50,100)); |