Bonjour à tous,
Je m'essaie à Dojo depuis quelques jours, et je suis confronté au pb suivant :
je crée un objet DataGrid dans une fonction, sur ce datagrid, je sélectionne 1 ou plusieurs lignes, et sur un clic ( dijit.form.Button ), je veux faire un traitement sur les lignes sélectionnées ( export vers un second DataGrid ) :

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
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
 
</script>
    .....
 
    function visuels1() {
        // définition de la structure:
        var jsonStore1 = new dojo.data.ItemFileReadStore({ .....});
        var mylayout1 = [ { field: 'champ1', name: 'Mes visuels' } ];
 
        // création d'un grid:
        var mygrid1 = new dojox.grid.DataGrid({
            query: {champ1: '*'},
            store: jsonStore1,
            clientSort: true,
            rowSelector: '20px',
            structure: mylayout1,
            title: 'Liste des visuels'
        }, document.createElement('td'));
 
         // ajouter le nouveau grid à la section td "myContainer1":
        dojo.byId("myContainer1").appendChild(mygrid1.domNode);
        // Init du tableau au lancement de la page
        mygrid1.startup();
    }
 
    function select() {
        var items = mygrid1.selection.getSelected();
        if(items.length){
		........
	}
    }
 
    function boutonSelection() {
 
         var mybouton = new dijit.form.Button({label: "SELECTIONNER", onClick: select}, document.createElement('td'));
        // ajouter le nouveau bouton à la section td "myContainer":
        dojo.byId("myContainer2").appendChild(mybouton.domNode);
    }
    dojo.addOnLoad(visuels1);
    dojo.addOnLoad(boutonSelection);
</script>
Dans la fonction select(), je dois faire référence à l'objet mygrid1, et évidemment, il n'est pas défini. Donc comment le référencer dans dojo pour je puisse y accéder.
Merci de votre collaboration.