我有这个对话框:
<p:dialog header="Commande editée le #{acceuilUserController.selectedMajCommande.dateMaj} par l'#{acceuilUserController.selectedMajCommande.utilisateur.type} #{acceuilUserController.selectedMajCommande.utilisateur.nom} #{acceuilUserController.selectedMajCommande.utilisateur.prenom}" widgetVar="carDialog" resizable="false" id="carDlg"
update="cars" showEffect="fade" hideEffect="explode" modal="true">
它在用户单击数据表下方的按钮时显示:
<p:column style="width:40px">
<p:commandButton id="selectButton" action="#{acceuilUserController.refresh()}" update=":form:carDlg" oncomplete="carDialog.show()" icon="ui-icon-search" title="plus de détails">
<f:setPropertyActionListener value="#{car}" target="#{acceuilUserController.selectedMajCommande}" />
</p:commandButton>
</p:column>
我希望当用户关闭 tis 对话框时,将执行以下方法:
public String refresh(){
this.selectedMajCommande.setLu(true);
System.out.println("je suis la alors : "+this.selectedMajCommande.isLu());
hch.updateCommandeMaj(selectedMajCommande);
return "acceuil";
}
它允许将数据刷新到数据表中,我成功地使用对话框中的一个按钮来做到这一点,如下所示:
<p:commandButton id="confirm" value="fermer" update="cars" oncomplete="carDialog.hide()"
action="#{acceuilUserController.refresh()}" />
但我只想在关闭对话框时这样做,不需要框中的这个按钮
这是我要刷新的数据表:
<p:dataTable id="cars" var="car" value="#{acceuilUserController.lc_maj}" tableStyle="width:auto" rowStyleClass="#{(car.lu == false) ? 'red' : null}" >
<p:column headerText="Commande N° : " style="width:100px">
<h:outputText value="#{car.commande.id}" />
</p:column>
<p:column headerText="Date de mise à jour : " style="width:100px">
<h:outputText value="#{car.dateMaj}" />
</p:column>
<p:column headerText="Decision : " style="width:100px">
<h:outputText value="#{car.decison}" />
</p:column>
<p:column headerText="Etat : " style="width:100px">
<h:outputText value="#{car.etat}" />
</p:column>
<p:column style="width:40px">
<p:commandButton id="selectButton" action="#{acceuilUserController.refresh()}" update=":form:carDlg" oncomplete="carDialog.show()" icon="ui-icon-search" title="plus de détails">
<f:setPropertyActionListener value="#{car}" target="#{acceuilUserController.selectedMajCommande}" />
</p:commandButton>
</p:column>
</p:dataTable>
怎么能做到这一点,提前谢谢