bonjour tous le monde
j'ai un probleme avec le widget dojox.widget.PlaceholderMenuItem avec grid
je masque et j'affiche des colonne de grid grace a ce widget par coche ou decouche
je stock les element qui cocher dans un cookie pour les conserver les colonne qui sont visible dans le grid cava jusqu'a mnt mais apres si je clic pour affichier une autre fois le grid
affichage de grid est bien mais les tous les case a coche de widget sont checked meme il ya pas leurs colonne visible
! j'ai verifier les id des case a coche est j'ai trouver que les id sont chager a chaque qd je click sur ma button qui s'affiche le grid
j'ai essai des modifier les id met toutes les id de l'etat initail mais ca marche pas
svp si vous savez un evenment qui me permet de modifier la valeur des id pour je peux les recupere apres ca sera mieux
si non un code qui me permet de recharger la page sans F5 car qd je fait F5 le va etre bien
voila mon code
qui permet de modifer id apres je recuper mais ca marche pas
ficheir.phtml
fichier.js
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <div dojoType="dijit.Menu" jsid="gridMenu" id="gridMenu" style="display: none;"> <div dojoType="dojox.widget.PlaceholderMenuItem" label="GridColumns"></div> </div>
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
32function functionGrid() { this.inherited("postCreate", arguments); grid = dijit.byId('grid'); var menu = dijit.byId('gridMenu'); var child=menu.getChildren(); for (var j = 0; j < child.length; j++) { idChild = child[j].id; console.log(idChild);//id encien child[j].attr("id","dijit_CheckedMenuItem_"+j) console.log(idChild);//nouveau id } //Recuperer les colonnes nameColonne = getCookie('nameColonne'); if (nameColonne != null && nameColonne != "") { //Mettre les colonnes dans une tableau var tableau = nameColonne.split(','); for (var i = 0; i < tableau.length; i++) { //Mettre les colonnes invisible grid.layout.setColumnVisibility(tableau[i], false); //il exicute pas ce code pour toutes le temp mais juste pour la 1 ere fois //msg d'erreur (dijit.byId("dijit_CheckedMenuItem_"+tableau[i]) =>n'exite pas if(dijit.byId("dijit_CheckedMenuItem_"+tableau[i])) dijit.byId("dijit_CheckedMenuItem_"+tableau[i]).attr("checked",false); } } }






Répondre avec citation




Partager