我使用Asp.Net MVC包装器创建了一个kendo网格。我已经包含一个复选框,用于选择多行进行布线,一切正常。但是,我在更改页面时遇到问题,或者在选择行/复选框消失时进行过滤。
这个问题的解决方案是什么?
答案 0 :(得分:1)
您需要使用.PersistSelection(true)
来确保在更改页面时保持选中行:
@(Html.Kendo().Grid<Kendo.Mvc.Examples.Models.OrderViewModel>()
.Name("rowSelection")
.Columns(columns => {
columns.Bound(o => o.ShipCountry).Width(300);
columns.Bound(p => p.Freight).Width(300);
columns.Bound(p => p.OrderDate).Format("{0:dd/MM/yyyy}");
})
.Pageable(pageable => pageable.ButtonCount(5))
.Selectable(selectable => selectable
.Mode(GridSelectionMode.Multiple))
.PersistSelection(true)
.Navigatable()
.DataSource(dataSource => dataSource
.Ajax()
.Model(m=>m.Id("OrderID"))
.PageSize(6)
.Read(read => read.Action("Orders_Read", "Grid"))
)
还要确保在DataSource中声明了一个id列,例如示例中的.Model(m=>m.Id("OrderID"))
,否则它将失败。
完整详情here。
我遇到了jQuery grid.select()
的问题:
var grid = $('#rowSelection').data('kendoGrid');
var rows = grid.select();
这似乎只返回在当前显示的页面上选择的行,而不是在所有页面中选择的所有行。