2

我已将 dataSource 中的数据分组为:

var dataSource = new kendo.data.DataSource({
  transport: {
    read: {
      url: " ",

    }
  },
   //and some other parameters specified   
  // group by the "category" field
   group: {
    field: "category",
    aggregates: [
      { field: "price", aggregate: "max" },
      { field: "price", aggregate: "min" }
    ]
  }
});

现在我想根据此处指定的字段以外的字段对组进行排序。这怎么可能实现?或者我如何禁用或覆盖“dir”的默认排序行为为升序。

4

1 回答 1

1

有一种未记录的方式来指定自定义排序函数,该函数将允许您对对象公开的任何属性/属性进行排序。

$("#grid").kendoGrid({
    columns: [
        { 
            field: "someProperty",
            sortable: {
                compare: function (left, right) {
                    // TODO: your custom logic here (just make sure you return a number)
                    return left.someOtherProperty - right.someOtherProperty;
                }
            },
            title: "I can do custom sorting!!!"
    ],
    dataSource: { .. },
    // other grid properties here
});

如果left小于right,compare函数应该返回一个负数,如果它们相等则返回0,如果left大于right,则返回一个正数。

于 2014-01-15T20:57:37.557 回答