Code:
function expandGrid(record,index){
var id = record.data.ID;
var Reader = new Array();
var Headers = new Array();
Ext.Ajax.request({
url : location.href.replace ('#', '')
,params : { Action : 'getRegroupementColumns',selected_id:id}
,loadMask : true
,method : 'post'
,success : function(response, opts)
{
var d = response.responseText.split("_");
Reader.push("Annee");
for (var i=0; i < d.length; i++)
{
Reader.push(d[i]);
Headers.push(d[i]);
}
var readerExpander = new Ext.data.JsonReader(
{
id: 'ID',
root: "records",
totalProperty: "totalCount"
},
Reader
)
var storeExpander = new Ext.data.Store
({
url : location.href.replace ('#', '')
,reader : readerExpander
});
var colsArray = new Array ();
var colAnnee = {
header : "Annee"
,width : 100
,dataIndex : "Annee"
}
colsArray.push(colAnnee);
for(var j=0; j < Headers.length; j++)
{
var colRegroup = {
header : Headers[j]
,width : 100
,dataIndex : Headers[j]
}
colsArray.push(colRegroup);
}
var cm = new Ext.grid.ColumnModel (colsArray);
var _expanderGrid = new Ext.grid.GridPanel({
renderTo : Ext.get('remData'+ index),
autoHeight : true,
border : false,
id : 'expanded'+ id,
disableSelection : false,
autoHeight : true,
collapsible : false,
disableSelection : true,
enableHdMenu : true,
trackMouseOver : false,
autoExpandColumn : 1,
autoSizeColumns : true,
store : storeExpander,
cm : cm,
stripeRows : 'true',
loadMask : true,
trackMouseOver : true,
viewConfig : {forceFit : true}
});
storeExpander.load({params:{action:"GetDataOfExpanderRow",selected_id:id}});
}
,failure: function(){
//mytab.el.unmask();
alert('Erreur'+ 'Problème de connexion au serveur.');
}
});
};