J'ai grille avec filtre et sur le filtre je veux afficher une liste d'éléments. En focalisant l'option de filtrage, je devrais voir une liste d'éléments avec des cases à cocher et quand je clique sur la case à cocher, elle devrait envoyer les paramètres. J'ai atteint ceci par chargement des données locales et je veux la même chose en chargeant des données à distance comment puis-je y parvenir. { dataIndex: 'adjustmentTypeDescription', texte: 'Réglage
Type', stateid: 'adjustmentgrid_adjustmentTypeDescription', filtre: {type : 'liste', labelField: 'nom', dataIndex: 'adjustmentTypeId',comment retourner les données comme une forme de tableau de stockage à distance extjs
store: Ext.create('Ext.data.ArrayStore', {
fields: [{
name: 'id',
type: 'int'
}, {
name: 'name',
type: 'string'
}],
data: [
[2, 'AA'],
[13, 'AFF'],
[11, 'DDD'],
[15, 'Dd'],
[5, 'Fdsdt'],
[6, 'Ide']
[10, 'Return/Reject']
]
})}
Maintenant, je veux charger ces données du service. Je essayé de cette façon:
store: Ext.create('Ext.data.ArrayStore', {
autoLoad: false,
model: 'ModelName',
/*fields: [{
name: 'adjustmentTypeId',
type: 'int'
}, {
name: 'description',
type: 'string'
}],*/
proxy: {
type: 'ajax',
url: 'servicurl',
timeout:120000,
reader: {
type: 'array',
// rootProperty: 'data',
rootProperty:function(data){
debugger;
return data;
debugger;
//console.log(bb);
}
}
}/*,
listeners: {
load: function(store, records, successful,
operation, eOpts){
debugger;
var data = [];
for(var i = 0; i< 1; i++){
//data.push(records[i].data.description);
var vare = new Array();
vare[0]= records[i].data.description;
data.push(vare);
}
store.loadData(data);
console.log(data);
}
}*/
})
mais ne fonctionnait pas comment puis-je parvenir en faisant un appel de service et le chargement des données à distance.
Mon erreur en fait le magasin ne devrait pas être ArrayStore parce que les données du serveur sont au format json: – Sweety
Je l'ai changé pour json reader et je l'ai eu https://fiddle.sencha.com/#view/editor&fiddle/28ko – Sweety