4

ここでは、id に基づいて CategoryName の値を取得するためのストアド プロシージャを記述しました。値は、インド、アメリカ、ブラジルのように提供されますが、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
    //...
});

});

4

3 に答える 3

0

Kendo UI Grid GroupingListSortDirection.Ascendingでは、デフォルトで並べ替えが可能です。他のことをしたい場合は、それを設定する必要があります。WebApi インターフェースを使用し、Kendo.mvc.dllメソッドの kendoRequest を生成している場合は、次の.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;
   }
}

こうすることで、グリッドの並べ替え機能は、一致したときにグループ化列に影響を与えます。

于 2016-08-01T13:11:41.850 に答える
0

これは完全な推測ですが、ServerSorting プロパティを true に設定してみましたか?

于 2013-03-20T13:39:22.153 に答える