在Kendo UI Grid中,在分组分组列排序不起作用后,其余列排序工作正常。
谁能告诉我如何从客户端排序分组列。
谢谢你!!
发布于 2015-10-13 05:11:31
当您在kendo网格中对数据进行分组时,它会自动对分组进行asc排序。您可以在docs中阅读有关此行为的信息
但您需要的是更改列标题单击时的分组排序。
在dataBound事件上,尝试查看网格dataSource.sort()集合,并在需要时更改组排序方向。
如下所示:
//Get the grid object
var grid = $("#grid").data("kendoGrid");
// Get the datasource bound to the grid
var ds = grid.dataSource;
// Get current sorting
var sort = ds.sort();
// Display sorting fields and direction
if (sort) {
for (var i = 0; i < sort.length; i++) {
if(sort[i].field == " myField"){
grid.dataSource.group({field:"myField", dir: sort[i].dir });
}
}
}发布于 2016-08-01 21:15:59
默认情况下,Kendo UI网格分组为您提供ListSortDirection.Ascending排序。如果你想做其他的事情,你必须设置它。如果您正在使用WebApi接口并为Kendo.mvc.dll方法.ToDataSourceResult(kendoRequest);生成一个kendoRequest,那么您可以尝试如下所示:
var sort = kendoRequest.Sorts.FirstOrDefault();
var group = kendoRequest.Groups.FirstOrDefault();
if(sort != null && group != null) {
if(sort.Member == group.Member && sort.SortDirection == ListSortDirection.Descending) {
kendoRequest.Groups[0].SortDirection = sort.SortDirection;
}
}
var result = data.ToDataSourceResult(kendoRequest);https://stackoverflow.com/questions/33031639
复制相似问题