我想在一个页面上显示一个对话框。
代码:page1.xhtml
<p:commandLink value="Show Dialog" oncomplete="dlgWVar.show();"/>
<p:dialog widgetVar="dlgWVar"
width="800"
id="dialog"
position="top"
modal="true"
header="Test Dialog"
height="500">
<iframe src="page2.xhtml" width="100%" height="500px" style="border-width: 0PX;">
</iframe>
</p:dialog>
现在在这个对话框中,我有一个iFrame,其中链接了page2.xhtml。
page2.xhtml
<p:commandButton value ="Close Dialog">
</p:commandButton>
page2.xhtml包含一个命令按钮。现在我必须在点击命令按钮后关闭对话框。
我不知道怎么做。我应该在page2.xhtml上的commandButton中写什么,以便关闭page1.xhtml上的对话框。请帮助。
谢谢。
对于较旧的PrimeFaces版本尝试使用window.parent.dlgWVar.hide()
。这只有在主窗口和iframe显示来自同一域的页面时才有可能。
对于5及以上版本的PrimeFaces,请参阅其他答案
For me
window.parent.PF('dlgWVar').hide()
。