zoukankan      html  css  js  c++  java
  • Extjs header column 自定义排序规则

    Extjs 的表格自带排序功能,这个功能在大部分情况下能够满足我们的需求,但是在某种情况下,例如IP排序,默认情况下,按照字符串进行排序,

    此时我们需要自定义排序规则,这个时候就需要我们重写方法了,

    具体代码如下:

    var grid = Ext.create('Ext.grid.Panel',{
        //...
        columns: [
            { text: 'name', dataIndex: 'name', sortable: true },
            {
                text: 'Custom',
                sortable : true,
                dataIndex: 'customsort',
               //重写此方法
                doSort: function(state) {
                    var ds = this.up('grid').getStore();
                    var field = this.getSortParam();
                    ds.sort({
                        property: field,
                        direction: state,
                       //排序规则(重点)
                        sorterFn: function(v1, v2){
                            v1 = v1.get(field);
                            v2 = v2.get(field);
                            return v1.length > v2.length ? 1 : (v1.length < v2.length ? -1 : 0);
                        }
                    });
                }
            }
        ]
       //....  
    })        
    

    解决方案参考:http://stackoverflow.com/questions/17795019/ext-js-sorting-custom-column-by-contents

  • 相关阅读:
    备忘
    基于ZooKeeper实现分布式锁
    git 使用ssh密钥
    git 的安装及使用
    sqlalchemy 使用pymysql连接mysql 1366错误
    SQL语句及5.7.2 mysql 用户管理
    C 实现快速排序
    C 实现冒泡排序
    C 实现选择排序
    sqlalchemy orm 操作 MySQL
  • 原文地址:https://www.cnblogs.com/shinubi/p/5752400.html
Copyright © 2011-2022 走看看