How to sort the EXT JS Grid Panel grouped data by its sortOrder
{Grouped data} {Sort Order}
Audi [3]
col11 col22 xol33
col21 col23 cole3
Benz [1]
col23 col32 cos32
col32 dos34 sdfd2
Citron [4]
jkj23 dfd23 fds23
jkjkk jjkkk jkkkk
Nissan [2]
col23 col32 cos32
col32 dos34 sdfd2
Fot the above data I want to by sort its sort order (as i got sort order for each group element in my groupdatastore) as below
Benz [1]
col23 col32 cos32
col32 dos34 sdfd2
Nissan [2]
col23 col32 cos32
col32 dos34 sdfd2
Audi [3]
col11 col22 xol33
col21 col23 cole3
Citron [4]
jkj23 dfd23 fds23
jkjkk jjkkk jkkkk
Try setting these on the store:
remoteGroup:true,
remoteSort: true
And in you sql or what you use to get data out sort by grouping field first.
gridDataStoreObj = new Ext.data.GroupingStore(
{
remoteGroup:true,
remoteSort: true,
proxy: new Ext.data.HttpProxy({url: 'index.php' }),
method:'POST',
groupField:'brandName',
...
sortInfo:{field: 'id', direction: "ASC"},
});
On the server:
select * from table order by brandName, id
This should sort groups themselves.
For extjs 4 and for local sorting, instede of using:
groupField: 'mygroupfield'
on the store
use:groupers: [{
property: 'tasklist_id',
sorterFn: function(o1, o2){}
}]
In the store use the sort order column as your groupField.
In the grid:
features: [
{
ftype: 'grouping',
groupHeaderTpl: [
'{[values.rows[0].groupId]}'
]
}
]
Where groupId is the 'id' of the column that you want to display
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With