有什么方法(或正确的方法)有条件地根据支持bean的条件来显示prime上的对话框吗?
该代码如下所示:

<!-- dialog declaration -->
<p:dialog id="dialogTest" widgetVar="dialogTest" header="#{text['modal.header']}" modal="true" >
                <h:outputText value="Test output" />
            </p:dialog>
<!-- caller -->
<p:menuitem value="Check" actionListener="#{backingBean.performCheck}" oncomplete="PF('dialogTest').show()" icon="ui-icon-arrowthick-1-e"/>

我的支持bean如下所示:
private boolean conditionFlag; // ... +getter

public void performCheck() {
    // ... access managers (database)
    this.conditionFlag = dao.check();// some check;
}

我只想显示对话框,以防conditionFlagtruep:menuitem运行后,如何在performCheck上执行类似的操作?
oncomplete="if (#{backingBean.conditionFlag}) { PF('dialogTest').show() }"
  • JSF 2.0
  • Primefaces 5
  • Java 1.7
  • 最佳答案

    只需将update="@this"添加到p:menuitem即可。那么您的oncomplete块将按您期望的那样工作。

    10-06 15:25