[PrimeFaces] Gestion de confirmation avec message dynamique
Bonjour,
J'ai un problème avec la gestion d'une fenêtre de confirmation.
J'ai chargé une liste avec des données et dans celle-ci, pour chaque ligne il y a une commande de suppression. Avant d'effectuer cette action de suppression, il y a une confirmation qui s'affiche, laquelle doit contenir un message + la ligne à supprimer. J'utilise pour cela un composant PrimeFaces appelé ConfirmDialog, qui affiche un petit message pour la confirmation.
Le problème est que je n'arrive pas à afficher ce dernier avec la ligne à supprimer. C'est-à-dire que lorsque je mets un attribut "update" pour le bouton, la confirmation s'affiche et disparait immédiatement.
Voici mon code :
Code:
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 42 43 44 45
| <h:form id="salleForm">
<!-- La liste des salles -->
<h:outputText value="Salles : " />
<p:growl id="messages" showDetail="true"/>
<p:dataTable id="salles" var="salle" value="#{salleMB.salleList}" style="width: 10%"
emptyMessage="#{msg.ligneVide}" paginator="true" rows="10"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
rowsPerPageTemplate="5,10,15">
<p:ajax event="rowEdit" listener="" update=":salleForm:messages" />
<p:ajax event="rowEditCancel" listener="" update=":salleForm:messages" />
<p:column>
<f:facet name="header">
<h:outputText value="ID Salle" />
</f:facet>
<h:outputText value="#{salle.idSalle}" />
</p:column>
<p:column headerText="Libelle">
<p:cellEditor>
<f:facet name="output">
<h:outputText value="#{salle.libelleSalle}" />
</f:facet>
<f:facet name="input">
<p:inputText value="#{salle.libelleSalle}" style="width:100%"/>
</f:facet>
</p:cellEditor>
</p:column>
<p:column>
<p:commandButton icon="ui-icon-trash" onclick="confirmation.show();" >
<f:setPropertyActionListener target="#{salleMB.salle}" value="#{salle}" />
</p:commandButton>
<p:confirmDialog id="confirmDialog" message="Voulez vous vraiment supprimez cette 'Salle' ?"
header="Suppression..." severity="alert" widgetVar="confirmation">
<p:commandButton id="confirm" value="Confirmer" actionListener="#{salleMB.deleteSalle}"
oncomplete="closeDialogIfSucess(xhr, status, args, confirmation 'confirmDialog')"
update=":salleForm" />
<p:commandButton id="decline" value="Annuler" onclick="confirmation.hide()" type="button" />
</p:confirmDialog>
</p:column>
<p:column headerText="Options" style="width:50px">
<p:rowEditor />
</p:column>
</p:dataTable>
</h:form> |
Quelqu'un saurait-il m'indiquer comment résoudre ce problème ?
Merci d'avance pour votre aide.