ExtJs中gridpanel分组后组名排序实例代码


Posted in Javascript onDecember 02, 2013

ExtJs中gridpanel分组后组名排序实例代码

/** 
  * 定义降序的groupingStore 
  */
var DescGroupingStore = Ext.extend(Ext.data.GroupingStore, { 
groupDir : 'ASC', 
groupBy : function(field, forceRegroup, direction) { 
    direction = direction ? (String(direction) 
              .toUpperCase() == 'DESC' ? 'DESC' : 'ASC') 
              : this.groupDir; 
    if (this.groupField == field 
           this.groupDir == direction && !forceRegroup) { 
          return; 
   } 
   this.groupField = field; 
   this.groupDir = direction; 
   if (this.remoteGroup) { 
       if (!this.baseParams) { 
          this.baseParams = {}; 
       } 
       this.baseParams['groupBy'] = field; 
          this.baseParams['groupDir'] = direction; 
       } 
       if (this.groupOnSort) { 
            this.sort(field, direction); 
            return; 
       } 
       if (this.remoteGroup) { 
            this.reload(); 
       } else { 
            var si = this.sortInfo || {}; 
            if (si.field != field || si.direction != direction) { 
                this.applySort(); 
            } else { 
                this.sortData(field, direction); 
            } 
            this.fireEvent('datachanged', this); 
        } 
    }, 
    applySort : function() { 
        Ext.data.GroupingStore.superclass.applySort.call(this); 
        if (!this.groupOnSort && !this.remoteGroup) { 
            if (this.groupField != this.sortInfo.field 
                    || this.groupDir != this.sortInfo.direction) { 
                this.sortData(this.groupField, this.groupDir); 
            } 
        } 
    }, 
    applyGrouping : function(alwaysFireChange) { 
        if (this.groupField !== false) { 
            this.groupBy(this.groupField, true, this.groupDir); 
            return true; 
        } else { 
            if (alwaysFireChange === true) { 
                this.fireEvent('datachanged', this); 
            } 
            return false; 
        } 
    } 
});
/*************************调用***************************/
// 消息列表数据源 
var messageStore = new DescGroupingStore({ 
    proxy : new Ext.data.HttpProxy({ 
        url : "listMessGrid.action"
    }), 
    reader : myReader, 
    groupDir : 'DESC', 
    groupField : 'status', 
    sortInfo : { 
        field : 'id', 
        direction : "DESC"
    } 
}); 
messageStore.load();
/*****************在gridpanel中添加如下属性*************************************/
view : new Ext.grid.GroupingView({ 
    showGroupName : false, 
    groupTextTpl : '{gvalue}:{text} ({[values.rs.length]} {[values.rs.length > 1 ? "封" : "封"]})', 
    showGroupsText : "ddd"
})
Javascript 相关文章推荐
用JS剩余字数计算的代码
Jul 03 Javascript
探讨JQUERY JSON的反序列化类 using问题的解决方法
Dec 19 Javascript
javascript实现了照片拖拽点击置顶的照片墙代码
Apr 03 Javascript
原生JavaScript实现异步多文件上传
Dec 02 Javascript
深入理解setTimeout函数和setInterval函数
May 20 Javascript
Dropzone.js实现文件拖拽上传功能(附源码下载)
Nov 22 Javascript
JS验证字符串功能
Feb 22 Javascript
JS实现的点击表头排序功能示例
Mar 27 Javascript
JScript实现表格的简单操作
Aug 15 Javascript
jQuery选择器之表单元素选择器详解
Sep 19 jQuery
JS实现将对象转化为数组的方法分析
Jan 21 Javascript
vue实现购物车结算功能
Jun 18 Javascript
javascript操作html控件实例(javascript添加html)
Dec 02 #Javascript
解析Javascript中大括号“{}”的多义性
Dec 02 #Javascript
解析JavaScript中点号“.”的多义性
Dec 02 #Javascript
解析JavaScript中的不可见数据类型
Dec 02 #Javascript
Jquery使用Firefox FireBug插件调试Ajax步骤讲解
Dec 02 #Javascript
jquery遍历之parent()和parents()的区别及parentsUntil()方法详解
Dec 02 #Javascript
jQuery向上遍历DOM树之parents(),parent(),closest()之间的区别
Dec 02 #Javascript
You might like
PHP strtotime函数详解
2009/12/18 PHP
PHP执行linux系统命令的常用函数使用说明
2010/04/27 PHP
PHP 面向对象程序设计(oop)学习笔记(三) - 单例模式和工厂模式
2014/06/12 PHP
PHP动态页生成静态页的3种常用方法
2014/11/13 PHP
php在线解压ZIP文件的方法
2014/12/30 PHP
PHP 在数组中搜索给定的简单实例 array_search 函数
2016/06/13 PHP
关于 Laravel Redis 多个进程同时取队列问题详解
2017/12/25 PHP
PHP DB 数据库连接类定义与用法示例
2019/03/11 PHP
Laravel定时任务的每秒执行代码
2019/10/22 PHP
js正确获取元素样式详解
2009/08/07 Javascript
基本jquery的控制tabs打开的数量的代码
2010/10/17 Javascript
JavaScript动态创建link标签到head里的方法
2014/12/22 Javascript
jQuery中map()方法用法实例
2015/01/06 Javascript
Vue.js框架路由使用方法实例详解
2017/08/25 Javascript
JS eval代码快速解密实例解析
2020/04/23 Javascript
Python中的choice()方法使用详解
2015/05/15 Python
浅谈Python中列表生成式和生成器的区别
2015/08/03 Python
Python中matplotlib中文乱码解决办法
2017/05/12 Python
Python实现判断一行代码是否为注释的方法
2018/05/23 Python
Python HTML解析模块HTMLParser用法分析【爬虫工具】
2019/04/05 Python
利用 Flask 动态展示 Pyecharts 图表数据方法小结
2019/09/04 Python
python代码如何实现余弦相似性计算
2020/02/09 Python
django执行原始查询sql,并返回Dict字典例子
2020/04/01 Python
python对接ihuyi实现短信验证码发送
2020/05/10 Python
python numpy矩阵信息说明,shape,size,dtype
2020/05/22 Python
如何基于Python Matplotlib实现网格动画
2020/07/20 Python
利用python+request通过接口实现人员通行记录上传功能
2021/01/13 Python
Python+Appium实现自动化清理微信僵尸好友的方法
2021/02/04 Python
你应该知道的30个css选择器
2014/03/19 HTML / CSS
什么是smarty? Smarty的优点是什么?
2013/08/11 面试题
医院护士的求职信
2014/01/03 职场文书
《回乡偶书》教学反思
2014/04/12 职场文书
村安全生产责任书
2014/08/25 职场文书
2014年计划生育工作总结
2014/11/14 职场文书
2015年审计人员工作总结
2015/05/26 职场文书
请学会珍惜眼前,因为人生没有下辈子!
2019/11/12 职场文书