Ext的排序,一般用到两种方式
1. 对当前页进行排序 remoteSort: false
2. 全部数据排序 remoteSort: true
通过gridStore.getSortState().field获取排序的字段
通过gridStore.getSortState().direction 获取排序的方向(ASC,DESC)
1 var gridStore = new Ext.data.Store({ 2 proxy: new Ext.data.ScriptTagProxy({ 3 url: '../taDiseaseDoc/buildJSONString.action' 4 }), 5 reader: new Ext.data.JsonReader({ 6 root: 'results', 7 totalProperty: 'total', 8 id: 'id' 9 }, [ 10 {name: 'id', mapping: 'id'}, 11 {name: 'name', mapping: 'name'}, 12 {name: 'sex', mapping: 'sex'}, 13 {name: 'birthday', mapping: 'birthday'}, 14 {name: 'age', mapping: 'age'} 15 ]), 16 //默认排序,当remoteSort为true时起作用 17 sortInfo:{field: 'age', direction: 'ASC'}, 18 /* 1. remoteSort:true, 服务器端全局排序方式。需要后台处理根据所传的值排序。 19 String sort= request.getParameter("sort"); 要排序的列名,无需定义,ext自动向后台传值 20 String dir= request.getParameter("dir"); 要排序的方式('ASC','DESC'),无需定义,自动向后台传值 21 2. remoteSort:false(默认), 客户端排序机制,对当前页进行排序。 22 */ 23 remoteSort: true 24 }); 25 var cm = new Ext.grid.ColumnModel([{ 26 id : 'age', 27 header : "年龄", 28 dataIndex : 'age', 29 width : 50, 30 align : 'center', 31 //开启排序 32 sortable : true, 33 css : 'vertical-align:middle;white-space:normal;border:#eee solid;border-0 0 0 1;' 34 } 35 } 36 ]);