2013-03-18 82 views
4

在這裏我已經編寫了基於id獲取CategoryName值的存儲過程,值來自印度,美國,巴西直至服務,但是在UI部分中,值自動按字母順序排序展示美國,巴西,印度等團體。我想按照印度,美國,巴西等格式顯示。我究竟做錯了什麼?提前致謝。在kendo ui網格中對網上論壇排序

$(document).ready(function() { 
var grid = $("#grid").kendoGrid({ 
    dataSource: { 
     type: "GET", 
     transport: { 
      read: { 
       url: "some url placed here", 
       dataType: "jsonp" 
      } 
     }, 
     pageSize: 20, 
     serverSorting: false, 
     group: { 
      field: "CategoryName", 
      aggregates: [{ 
       field: "abc", 
       aggregate: "count" 
      }, { 
       field: "def", 
       aggregate: "sum" 
      }, { 
       field: "ghi", 
       aggregate: "sum" 
      }] 
     }, 
     aggregate: [{ 
      field: "abc", 
      aggregate: "count" 
     }, { 
      field: "def", 
      aggregate: "sum" 
     }, { 
      field: "ghi", 
      aggregate: "sum" 
     }] 
    }, 
    columns: [ 
    //column section goes here..... 
    ], 
    sortable: false 
    //... 
}); 

});

回答

0

這是一個完整的猜測,但您是否嘗試將ServerSorting屬性設置爲true?

+0

沒有probs我試過一切.. – sivaji 2013-03-21 04:54:00

1

我記得kendo ui文檔中的某處(可能是數據源>組),它表示,如果您定義組,則分組需要排序後的數據。刪除所有組並以普通香草網格顯示數據並查看如果應用一些自動分類。

+0

請通過引用和鏈接文檔來改善您的答案。 – Ram 2015-04-28 20:34:17

+0

看看這裏[Kendo UI論壇](http://www.telerik.com/forums/datasource-group-then-sort)。如果您的組覆蓋排序。目前他們不支持Group和Sort。 – 2016-03-23 14:08:12

0

Kendo UI網格分組默認給你ListSortDirection.Ascending排序。如果你想做其他事情,你必須設置它。如果您正在使用的WebAPI接口和生成kendoRequest爲Kendo.mvc.dll方法.ToDataSourceResult(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; 
    } 
} 

這樣從電網的排序功能,通過柱影響集團何時匹配。