有什么方法(或正确的方法)有条件地根据支持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;
}
我只想显示对话框,以防conditionFlag
是true
。 p:menuitem
运行后,如何在performCheck
上执行类似的操作?oncomplete="if (#{backingBean.conditionFlag}) { PF('dialogTest').show() }"
最佳答案
只需将update="@this"
添加到p:menuitem
即可。那么您的oncomplete
块将按您期望的那样工作。