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 相关文章推荐
基于jquery的loading效果实现代码
Nov 05 Javascript
javascrip客户端验证文件大小及文件类型并重置上传
Jan 12 Javascript
使用jquery中height()方法获取各种高度大全
Apr 02 Javascript
浅谈Javascript中Object与Function对象
Sep 26 Javascript
JavaScript语言精粹经典实例(整理篇)
Jun 07 Javascript
常用的几个JQuery代码片段
Mar 13 Javascript
Vue.js通用应用框架-Nuxt.js的上手教程
Dec 25 Javascript
Mac下安装vue
Apr 11 Javascript
vue学习笔记五:在vue项目里面使用引入公共方法详解
Apr 04 Javascript
JavaScript代理模式原理与用法实例详解
Mar 10 Javascript
js闭包的9个使用场景
Dec 29 Javascript
vue watch监控对象的简单方法示例
Jan 07 Vue.js
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
JAVA/JSP学习系列之六
2006/10/09 PHP
fleaphp crud操作之find函数的使用方法
2011/04/23 PHP
WordPress主题中添加文章列表页页码导航的PHP代码实例
2015/12/22 PHP
基于PHP实现用户登录注册功能的详细教程
2020/08/04 PHP
解决 FireFox 下[使用event很麻烦] 的问题.
2006/08/22 Javascript
JQuery获取浏览器窗口内容部分高度的代码
2012/02/24 Javascript
JS实现图片无间断滚动代码汇总
2014/07/30 Javascript
js监听鼠标点击和键盘点击事件并自动跳转页面
2014/09/24 Javascript
js实现字符串和数组之间相互转换操作
2016/01/12 Javascript
JavaScript数组方法大全(推荐)
2016/07/05 Javascript
利用vue.js插入dom节点的方法
2017/03/15 Javascript
vue.js事件处理器是什么
2017/03/20 Javascript
详解vue中引入stylus及报错解决方法
2017/09/22 Javascript
Vue项目自动转换 px 为 rem的实现方法
2018/10/29 Javascript
vue-cli 首屏加载优化问题
2018/11/06 Javascript
vue实现双向绑定和依赖收集遇到的坑
2018/11/29 Javascript
初学node.js中实现删除用户路由
2019/05/27 Javascript
如何在Angular8.0下使用ngx-translate进行国际化配置
2019/07/24 Javascript
解决Vue在Tomcat8下部署页面不加载的问题
2019/11/12 Javascript
[01:11]回顾历届DOTA2国际邀请赛中国区预选赛
2017/06/26 DOTA
[09:13]DOTA2-DPC中国联赛 正赛 Ehome vs Magma 选手采访 1月19日
2021/03/11 DOTA
学习python (1)
2006/10/31 Python
python在linux中输出带颜色的文字的方法
2014/06/19 Python
Python 正则表达式的高级用法
2016/12/04 Python
python微信公众号之关键词自动回复
2018/06/15 Python
python使用knn实现特征向量分类
2018/12/26 Python
10 分钟快速入门 Python3的教程
2019/01/29 Python
Python通过TensorFlow卷积神经网络实现猫狗识别
2019/03/14 Python
Python3并发写文件与Python对比
2019/11/20 Python
Python连接Hadoop数据中遇到的各种坑(汇总)
2020/04/14 Python
Python实现转换图片背景颜色代码
2020/04/30 Python
video下autoplay属性无效的解决方法(添加muted属性)
2020/05/19 HTML / CSS
美国隐形眼镜网:Major Lens
2018/02/09 全球购物
腾讯公司的一个sql题
2013/01/22 面试题
送餐员岗位职责范本
2014/02/21 职场文书
Python自动化之批量处理工作簿和工作表
2021/06/03 Python