关闭后如何刷新页面p:dialog

How to refresh the page after closing p:dialog

我有以下对话框:

<h:form id="r1">
  <p:commandButton value="Basic" type="button" onclick="PF('dlg1').show();" />
  <p:dialog header="Basic Dialog" widgetVar="dlg1">
    <h:outputText id="test" value="Welcome to PrimeFaces" />
  </p:dialog>
</h:form>

如何在关闭对话框后刷新 JSF 页面?

<p:dialog>支持ajaxclose事件。这只需要将它放在 <h:form> 内(与 相反),因此您需要确保它已经手动定位到 <h:body> 的最后并且您没有'利用 appendToBody.

<h:body>
    <h:panelGroup id="content" layout="block">
        ...
    </h:panelGroup>

    ...

    <h:form>
        <p:dialog>
            <p:ajax event="close" update=":content" />
            ...
        </p:dialog>
    </h:form>
</h:body>

如果您打算更新整个页面,请在必要时使用update="@all"。但最好只更新真正需要更新的部分。