首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kendo网格分组列排序不起作用

Kendo网格分组列排序不起作用
EN

Stack Overflow用户
提问于 2015-10-09 14:47:06
回答 2查看 2.4K关注 0票数 1

在Kendo UI Grid中,在分组分组列排序不起作用后,其余列排序工作正常。

谁能告诉我如何从客户端排序分组列。

谢谢你!!

EN

回答 2

Stack Overflow用户

发布于 2015-10-13 05:11:31

当您在kendo网格中对数据进行分组时,它会自动对分组进行asc排序。您可以在docs中阅读有关此行为的信息

但您需要的是更改列标题单击时的分组排序。

dataBound事件上,尝试查看网格dataSource.sort()集合,并在需要时更改组排序方向。

如下所示:

代码语言:javascript
复制
//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 });
        }
    }
}
票数 0
EN

Stack Overflow用户

发布于 2016-08-01 21:15:59

默认情况下,Kendo UI网格分组为您提供ListSortDirection.Ascending排序。如果你想做其他的事情,你必须设置它。如果您正在使用WebApi接口并为Kendo.mvc.dll方法.ToDataSourceResult(kendoRequest);生成一个kendoRequest,那么您可以尝试如下所示:

代码语言:javascript
复制
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);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33031639

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档