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 相关文章推荐
$.format,jquery.format 使用说明
Jul 13 Javascript
使用jQuery实现的网页版的个人简历(可换肤)
Apr 19 Javascript
JS 排序输出实现table行号自增前端动态生成的tr
Aug 13 Javascript
基于jQuery的JavaScript模版引擎JsRender使用指南
Dec 29 Javascript
JavaScript Sort 的一个错误用法示例
Mar 20 Javascript
JS模拟并美化的表单控件完整实例
Aug 19 Javascript
js随机生成字母数字组合的字符串 随机动画数字
Sep 02 Javascript
使用React实现轮播效果组件示例代码
Sep 05 Javascript
Bootstrap禁用响应式布局的实现方法
Mar 09 Javascript
jQuery实现的简单歌词滚动功能示例
Jan 07 jQuery
JavaScript浅层克隆与深度克隆示例详解
Sep 01 Javascript
Node.js fs模块原理及常见用途
Oct 22 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
配置支持SSI
2006/11/25 PHP
php无限分类且支持输出树状图的详细介绍
2013/06/19 PHP
thinkPHP5.0框架API优化后的友好性分析
2017/03/17 PHP
PHP静态方法和静态属性及常量属性的区别与介绍
2019/03/22 PHP
javascript 新浪背投广告实现代码
2009/07/07 Javascript
从零开始学习jQuery (三) 管理jQuery包装集
2011/02/23 Javascript
Javascript 函数parseInt()转换时出现bug问题
2014/05/20 Javascript
jQuery $.extend()用法总结
2014/06/15 Javascript
javacript使用break内层跳出外层循环分析
2015/01/12 Javascript
JQuery给网页更换皮肤的方法
2015/05/30 Javascript
JS中把函数作为另一函数的参数传递方法(总结)
2017/06/28 Javascript
AngularJS中filter的使用实例详解
2017/08/25 Javascript
Vue.JS项目中5个经典Vuex插件
2017/11/28 Javascript
nodeJs实现基于连接池连接mysql的方法示例
2018/02/10 NodeJs
详解javascript中的变量提升和函数提升
2018/05/24 Javascript
angularJs select绑定的model取不到值的解决方法
2018/10/08 Javascript
解决vue的touchStart事件及click事件冲突问题
2020/07/21 Javascript
记录Django开发心得
2014/07/16 Python
Python实现计算最小编辑距离
2016/03/17 Python
快速了解Python相对导入
2018/01/12 Python
python使用筛选法计算小于给定数字的所有素数
2018/03/19 Python
python 文本单词提取和词频统计的实例
2018/12/22 Python
Python 存储字符串时节省空间的方法
2019/04/23 Python
Django Docker容器化部署之Django-Docker本地部署
2019/10/09 Python
导入tensorflow:ImportError: libcublas.so.9.0 报错
2020/01/06 Python
python 实现控制鼠标键盘
2020/11/27 Python
SQL Server里面什么样的视图才能创建索引
2015/04/17 面试题
结婚邀请函范文
2014/01/14 职场文书
大学优秀班主任事迹材料
2014/05/02 职场文书
教师自查自纠工作情况报告
2014/10/29 职场文书
2014年教务处工作总结
2014/12/03 职场文书
青年岗位能手事迹材料
2014/12/23 职场文书
采购员岗位职责
2015/02/03 职场文书
培训学校2015年度工作总结
2015/07/20 职场文书
高中体育课教学反思
2016/02/16 职场文书
为Java项目添加Redis缓存的方法
2021/05/18 Redis