我有一个链接到远程商店的网格,并启用了远程排序。
当我第一次点击网格标题时,它将列顺序设置为升序,然后在第二次单击时降序。
有没有办法让第一次点击按某些列的降序排列?
答案 0 :(得分:2)
嗯..花了很多时间才弄清楚这一点,似乎没有直接的API来改变默认方向。
这就是我最终想到的,你需要更新商店中的sortSortDirection。
store.getSorters().$sortable.setDefaultSortDirection('DESC');
以下是Fiddle
<强>更新强>
如果要在列级别应用默认排序方向,则可以在列级别覆盖toggleSortState方法。
columns: [{
dataIndex: 'id',
text: 'ID',
width: 50,
/**
* Overriding this function to Change the Default Sort Order.
*/
toggleSortState: function() {
if (this.isSortable()) {
var me = this,
grid = me.up('tablepanel'),
store = grid.store,
sortParam = me.getSortParam(),
direction = undefined;
if(!store.getSorters().get(sortParam)) {
direction = 'DESC';
}
this.sort(direction);
}
},
}
以下是Fiddle