复制代码代码如下:
/**
* 定义降序的groupingМагазин
*/
вар DescGroupingStore = Ext.extend(Ext.data.GroupingStore, {
groupDir: 'ASC',
groupBy: функция (поле, ForceRegroup, направление) {
направление = направление? (Строка (направление)
.toUpperCase() == 'DESC' ? 'DESC': 'ASC')
: this.groupDir;
если (this.groupField == поле
this.groupDir == направление && !forceRegroup) {
возвращаться;
}
this.groupField = поле;
this.groupDir = направление;
если (this.remoteGroup) {
если (!this.baseParams) {
this.baseParams = {};
}
this.baseParams['groupBy'] = поле;
this.baseParams['groupDir'] = направление;
}
если (this.groupOnSort) {
this.sort(поле, направление);
возвращаться;
}
если (this.remoteGroup) {
это.перезагрузить();
} еще {
вар си = this.sortInfo || {};
if (si.field != поле || si.direction != направление) {
это.applySort();
} еще {
this.sortData(поле, направление);
}
this.fireEvent('datachanged', это);
}
},
applySort : function() {
Ext.data.GroupingStore.superclass.applySort.call(this);
if (!this.groupOnSort && !this.remoteGroup) {
если (this.groupField != this.sortInfo.field
|| this.groupDir != this.sortInfo.direction) {
this.sortData(this.groupField, this.groupDir);
}
}
},
applyGrouping : функция (всегдаFireChange) {
if (this.groupField !== false) {
this.groupBy(this.groupField, true, this.groupDir);
вернуть истину;
} еще {
если (alwaysFireChange === true) {
this.fireEvent('datachanged', это);
}
вернуть ложь;
}
}
});
复制代码代码如下:
/*************************** 调用************************ ****/
// 消息列表数据源
вар messageStore = новый DescGroupingStore({
прокси: новый Ext.data.HttpProxy({
URL: "listMessGrid.action"
}),
читатель: myReader,
groupDir: 'DESC',
groupField: «статус»,
сортировкаИнформация : {
поле: 'id',
направление: «DESC»
}
});
messageStore.load();
复制代码代码如下:
/*****************Гридпанель中添加如下属性************************** ***********/
представление: новый Ext.grid.GroupingView({
showGroupName: ложь,
groupTextTpl : '{gvalue}:{text} ({[values.rs.length]} {[values.rs.length > 1 ? "封" : "封"]})',
showGroupsText: "ддд"
})