Salut,
Voila je voudrais faire un truc assez simple c'est pouvoir cocher tous les checkbox de mon tableau
voici le code jsf
Et mon code java pour cocher toutes les checkbox lorsqu'on clique sur "coher tout" qui appelle la fonction cocher()
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <h:dataTable id="table" binding="#{Userctrl.view.dataTable}" value="#{Userctrl.model.datas.listUser}" var="name" > <h:column> <h:SelectBooleanCheckbox id="cb" binding="#{Userctrl.view.checkbox}"/> <h:column>
Voila donc rien de tres compliqué. Le probléme c'est qu'au final je n'ai qu'une case coché. Dans le cas au dessus ce sera la derniére checkbox de mon tableau car la derniére valeur de i correspond à la derniére case de mon tableau et j'ai this.dataTable.setRowIndex(i);
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 public void cocher (){ int size=dataTable.getRowCount(); for (int i=0;i<size;i++){ this.dataTable.setRowIndex(i); this.checkbox.setSelected(true); }
si j avais eu this.dataTable.setRowIndex(i); il aurait coché l'avant derniére case
et si j avais eu this.dataTable.setRowIndex(size-i-1); il aurait coché la 1ere case de mon tableau car la derniere valeur de la boucle aurait été 0.
tout ça pour dire qu'il prend en compte que le dernier this.dataTable.setRowIndex(i-1); alors que je voudrais mettre à jour toutes mes cases !!!!!!
Quelqu'un à une idée de comment faire ça....
Partager