ext表格grid----重写applySort方法,使支持按中文首字母排序
2012-07-07 17:11
435 查看
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gbk"> <title>03.grid</title> <link rel="stylesheet" type="text/css" href="../ext-3.1.1/resources/css/ext-all.css" /> <script type="text/javascript" src="../ext-3.1.1/adapter/ext/ext-base.js"></script> <script type="text/javascript" src="../ext-3.1.1/ext-all.js"></script> <script type="text/javascript"> Ext.data.Store.prototype.applySort = function() {//重写applySort方法,使支持按中文首字母排序 if (this.sortInfo && !this.remoteSort) { var s = this.sortInfo, f = s.field; var st = this.fields.get(f).sortType; var fn = function(r1, r2) { var v1 = st(r1.data[f]), v2 = st(r2.data[f]); if (typeof(v1) == "string") { return v1.localeCompare(v2); } return v1 > v2 ? 1 : (v1 < v2 ? -1 : 0); }; this.data.sort(s.direction, fn); if(this.snapshot && this.snapshot != this.data) { this.snapshot.sort(s.direction, fn); } } }; Ext.onReady(function(){ var cm = new Ext.grid.ColumnModel([ {header:'编号',dataIndex:'id',sortable:true,width:35}, {header:'名称',dataIndex:'name',sortable:true,width:80}, {id:'descn',header:'描述',dataIndex:'descn',sortable:true,width:200} ]); var data = [ ['1','啊','descn1'], ['2','啵','descn2'], ['3','呲','descn3'], ['4','嘚','descn4'], ['5','咯','descn5'] ]; var store = new Ext.data.Store({ proxy: new Ext.data.MemoryProxy(data), reader: new Ext.data.ArrayReader({}, [ {name: 'id'}, {name: 'name'}, {name: 'descn'} ]), sortInfo: {field: "name", direction: "ASC"} }); store.load(); var grid = new Ext.grid.GridPanel({ autoHeight: true, renderTo: 'grid', store: store, cm: cm, autoExpandColumn: 'descn' }); }); </script> </head> <body> <script type="text/javascript" src="../examples.js"></script> <div id="grid"></div> </body> </html>
相关文章推荐
- Ext让grid支持按列排序--中文排序问题
- tablesorter.js表格排序使用方法(支持中文排序)
- Ext.grid中文排序问题解决
- 让MySQL支持中文排序的实现方法
- 表格排序 支持汉字按拼音排序,面向对象的使用方法
- TableSort.js表格排序插件使用方法详解
- Jtable 表格多列排序(支持中文汉字排序)
- Flex Datagrid重写排序方法sortCompareFunction
- ng-grid中自定义排序方法sortFn
- ext中grid对中文排序
- ExtJS4.2学习(四)Grid表格中文排序问题
- 让MySQL支持中文排序的实现方法
- ExtJS4.2学习(四)Grid表格中文排序问题
- CxGrid表格中文排序错误问题解决方法
- 让MySQL支持中文排序的实现方法
- 重写 Collections.sort 的 compare 方法自定义排序 例子
- ExtJS4.2学习(四)Grid表格中文排序问题(转)
- JS排序:localeCompare() 方法实现中文排序、sort方法实现数字英文混合排序
- 利用数组的Sort方法实现表格点击排序
- jquery.tableSort.js表格排序插件使用方法详解