复制代码代码如下 :
/**
* 定义降序的groupingStore
*/
var DescGroupingStore = Ext.extend(Ext.data.GroupingStore, {
groupDir : 'ASC',
groupBy : fonction (champ, forceRegroup, direction) {
direction = direction ? (Chaîne(direction)
.toUpperCase() == 'DESC' ? 'DESC' : 'ASC')
: this.groupDir;
if (this.groupField == champ
this.groupDir == direction && !forceRegroup) {
retour;
}
this.groupField = champ ;
this.groupDir = direction ;
si (this.remoteGroup) {
si (!this.baseParams) {
this.baseParams = {};
}
this.baseParams['groupBy'] = champ ;
this.baseParams['groupDir'] = direction ;
}
si (this.groupOnSort) {
this.sort(champ, direction);
retour;
}
si (this.remoteGroup) {
this.reload();
} autre {
var si = this.sortInfo || {} ;
if (si.field != field || si.direction != direction) {
this.applySort();
} autre {
this.sortData(champ, direction);
}
this.fireEvent('datachanged', this);
}
},
applySort : function() {
Ext.data.GroupingStore.superclass.applySort.call(this);
if (!this.groupOnSort && !this.remoteGroup) {
si (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);
renvoie vrai ;
} autre {
if (alwaysFireChange === true) {
this.fireEvent('datachanged', this);
}
renvoie faux ;
}
}
});
复制代码代码如下 :
/*************************调用************************ ****/
// 消息列表数据源
var messageStore = nouveau DescGroupingStore({
proxy : nouveau Ext.data.HttpProxy({
URL : "listMessGrid.action"
}),
lecteur : monLecteur,
Répgroupe : 'DESC',
groupField : 'statut',
sortInfo : {
champ : 'id',
sens : "DESC"
}
});
messageStore.load();
复制代码代码如下 :
/******************在gridpanel中添加如下属性************************** ***********/
vue : nouveau Ext.grid.GroupingView({
showGroupName : faux,
groupTextTpl : '{gvalue}:{text} ({[values.rs.length]} {[values.rs.length > 1 ? "封" : "封"]})',
showGroupsText : "jdd"
})