2011-10-06 8 views
1

J'utilise richfaces 4.1.0M2 avec JSF2.0 et j'ai un PickList et ce que je veux, c'est que quand quelqu'un sélectionne (clic de souris) un élément dans la liste de gauche, certains composant dans le formulaire est mis à jour en fonction de ce qui est cliqué. J'ai réussi à déclencher un événement dans le haricot où un clic sur un élément. Le code pour atteindre le déclencheur estComment savoir quel élément est cliqué dans richfaces PickList

<rich:pickList showButtonsLabel="false" value="#{groupBean.pickListResult}" 
            listHeight="100" converter="#{groupBean.converter}"> 
            <a4j:ajax event="click" render="userlist" limitRender="true" listener="#{groupBean.updateGroupMembers}"/> 
            <f:selectItems value="#{groupBean.leftPickList}" /> 
         </rich:pickList> 

Mais je ne parviens pas à obtenir la valeur de SelectItem sur laquelle j'ai cliqué. Toute idée de comment je peux faire ça. J'ai lu dans la documentation que chaque élément a trois états associés dans le PickList, c'est-à-dire commun, sélectionné, actif. Il y a donc un moyen d'obtenir ces états dans le haricot. Une idée.

Répondre

0

La valeur sélectionnée sera disponible en groupBean.pickListResult (sur le serveur)

+0

En fait, je veux les éléments qui sont mis en évidence par un clic de souris avant qu'ils ne soient déplacés dans pickListResult. – WuR

+0

Si vous voulez sélectionner plusieurs valeurs, n'utilisez pas a4j: ajax avec l'événement click car cela vous permettra seulement de sélectionner une valeur. Sans Ajax, sélectionnez n'importe quel nombre d'éléments, puis cliquez sur un bouton de soumission. –

0

Je pense que vous devriez utiliser onchange événement dans <a:support>

ex: <a4j:ajax event="onchange" render="userlist" limitRender="true" /> 
+0

Peut aussi fonctionner mais il devrait être event = "change" –

Questions connexes