
[英]JSF 2.0(Primefaces) - composite component is unreachable, if to refer by ID
[英]JSF 2.0 Primefaces close a dialog in a composite component
我想在对话框中显示一个复合组件。 它可以工作,但是如何从复合组件中关闭该对话框。
<p:commandButton value="Display Data Value Assertion Dialog" onclick="dlg2.show();" type="button"/>
<p:dialog header="Modal Dialog" widgetVar="dlg2" modal="true" height="600" width="800">
<tcmt:DataValueAssertion managedBean="#{dataValueAssertionController}"/>
</p:dialog>
在我的复合组件中:
<h:commandButton value="Save Assertions">
<f:ajax listener="#{datatypeAssertionController.saveDatatypeAssertion}"></f:ajax>
</h:commandButton>
<h:commandLink value="Close">
<f:ajax listener="#{datatypeAssertionController.closeDatatypeAssertion}"></f:ajax>
</h:commandLink>
单击保存时,我希望能够保存数据并关闭对话框。 单击取消时,我只想关闭对话框而不保存。 saveDatatypeAssertion
和closeDatatypeAssertion
方法都是占位符。 我需要找到一种方法来获取对话框dlg2
的引用,然后对其调用hide()
方法。
如果您使用的是 JSF 2.0。您可以这样做:
<h:commandButton value="Save Assertions" >
<f:ajax event="click" onevent="dlg2.hide()" listener="#{datatypeAssertionController.saveDatatypeAssertion}" />
</h:commandButton>
<h:commandLink value="Close" >
<f:ajax event="click" onevent="dlg2.hide()" listener="#{datatypeAssertionController.closeDatatypeAssertion}" />
</h:commandLink>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.