复制代码代码如下:
/**
* 定义降序的分组存储
*/
var DescGroupingStore = Ext.extend(Ext.data.GroupingStore, {
组目录:'ASC',
groupBy : 函数(场, 力重组, 方向) {
方向=方向? (字符串(方向)
.toUpperCase() == 'DESC' ? “降序”:“升序”)
: 这个.groupDir;
if (this.groupField == 字段
this.groupDir == 方向 && !forceRegroup) {
返回;
}
this.groupField = 字段;
this.groupDir = 方向;
if (this.remoteGroup) {
if (!this.baseParams) {
this.baseParams = {};
}
this.baseParams['groupBy'] = 字段;
this.baseParams['groupDir'] = 方向;
}
if (this.groupOnSort) {
this.sort(字段, 方向);
返回;
}
if (this.remoteGroup) {
this.reload();
} 别的 {
var si = this.sortInfo || {};
if (si.field != field || si.direction != 方向) {
this.applySort();
} 别的 {
this.sortData(字段, 方向);
}
this.fireEvent('datachanged', this);
}
},
应用排序:函数(){
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 : 函数(alwaysFireChange) {
if (this.groupField !== false) {
this.groupBy(this.groupField, true, this.groupDir);
返回真;
} 别的 {
如果(alwaysFireChange === true){
this.fireEvent('datachanged', this);
}
返回假;
}
}
});
复制代码代码如下:
/************************调用************************ ****/
// 消息列表数据源
var messageStore = new DescGroupingStore({
代理:新的 Ext.data.HttpProxy({
url : "listMessGrid.action"
}),
读者:我的读者,
组目录:'DESC',
groupField : '状态',
排序信息:{
字段:'id',
方向:“DESC”
}
});
messageStore.load();
复制代码代码如下:
/********************在gridpanel中添加如下属性**************************** **********/
视图:新的 Ext.grid.GroupingView({
显示组名:假,
groupTextTpl : '{gvalue}:{text} ({[values.rs.length]} {[values.rs.length > 1 ? "封" : "封"]})',
显示组文本:“ddd”
})