这怎么能工作:
<h:form id="newForm">
<p:dialog header="x" widgetVar="newDialog" id="newDlg" modal="true">
...
<p:commandButton value="Close" update=":form1:dt1" id="cancelNew" immediate="true">
<f:ajax event="click" onevent="xyz.hide()" />
</p:commandButton>
onevent
指的是一个不存在的名称;然而,当我单击按钮时,对话框就关闭了。如果我省略 ajax 元素,它不会关闭。这是PF(4)黑魔法吗?
我认为当您省略onevent
时,update
就会运行并转到:form1:dt1
.一切正常,对话框按预期关闭(因为update
)。但是当你有onevent
时,你会得到一个异常(据我所知),并且由于这个异常,对话框保持打开状态。如果检查日志,则应看到异常。
在对话框中还应该存在一个表单,例如:
<p:dialog widgetVar="Dialog" .........
<h:form id="formDialog">
...............