Bonjour à tous,
j'ai dans ma vue principale une TreeGrid dans laquelle j'ai une ActionColumn qui ouvre une fenêtre.
Cette fenêtre contient une grid qui pour se remplir attend 2 valeurs, et un bouton OK.
Actuellement je fais dans mon TreeGrid:
Ma fenêtre qui contient la Grid, possède une procédure pour remplir ma grille fillGrid à laquelle je passe 2 paramètres.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 var foldername = record.get('name'); var json_id = record.get('id'); if ((!Ext.isEmpty(foldername)) && (!Ext.isEmpty(json_id))) { // Afficher la fenêtre DoSharing; var myModalWindow = Ext.create('MonAPP.view.sharing.DoSharing', { title: 'Share my Folder: ' + foldername }).show(); MonAPP.app.getController("sharing.DoSharing").fillGrid(foldername, json_id); }
Alors voici mon problème, lorsque je clique sur le bouton OK de la fenêtre qui contient la Grid, cela execute 2 fois le onOkClick ??!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 onOkClick: function () { console.log('je click'); <==== Affiche 2 fois ? }, fillGrid: function(foldername, json_id) { var myGridSharing = this.getRefGridSharing(); myGridSharing.getStore().load({ scope: this, params: { folder : foldername, json_id : json_id }, callback: function(records, operation, success) { if (success) { } } }); }
Savez vous pourquoi ? Une piste, cela provient surement du getController() car si je ne rempli pas ma Grid alors le onOkClick ne se lance qu'une seule fois.
Pour info: fillGrid() ne se lance bien qu'une seule fois.
Comment faire pour passer mes 2 variables du controller de mon TreeGrid au controller de ma Grid sans utiliser getController() ?
D'avance merci pour vos conseils !
Partager