有条件地打开全​​局p:confirmDialog,p:确认

mrg*_*ser 1 jsf dialog primefaces jsf-2

我想p:confirmDialog基于bean布尔值打开一个全局.我想要这样的东西:

<p:commandButton value="Save" actionListener="#{bean.save}" 
                 update="@form" oncomplete="jsfunction();">
    <p:confirm header="Confirm" message="Are you sure?" rendered="#{bean.boolean}"/>
</p:commandButton>
Run Code Online (Sandbox Code Playgroud)

但渲染在那里不起作用(我希望).

此外,我不想复制p:commandButton并使用其呈现的属性来实现这一点.

有没有办法在不改变太多东西的情况下完成这项工作?我必须在很多按钮中做到这一点.

Hei*_*eli 11

我知道这个问题有点陈旧,但我最近在条件/动态确认方面遇到了同样的问题,上述解决方案都没有对我有用.

经过一些测试后,我使用禁用的属性(在PrimeFaces 6.0中引入)构建了我的按钮,如下所示:

<p:confirmDialog global="true">
    <p:commandButton value="Yes" type="button" />
    <p:commandButton value="No" type="button" />
</p:confirmDialog>

<p:commandButton actionListener="#{myBean.myMethod} value="Submit">      
    <p:confirm header="Confirmation" message="Are you sure?" disabled="#{myBean.boolean}"/>
</p:commandButton>
Run Code Online (Sandbox Code Playgroud)