Как я могу показать p: verifyDialog из бобов? - PullRequest
0 голосов
/ 02 ноября 2018

Я получил это от простых лиц, но я не хочу использовать кнопку и вызывать диалоговое окно подтверждения из bean-компонента, как я могу сделать это или отобразить командную кнопку и выполнить из bean-компонента?

Проблема в том, что я использую командную кнопку для выполнения метода, в этом методе есть if, если в true тогда я хочу показать диалоговое окно подтверждения.

<p:commandButton value="Destroy the World" actionListener="#{dialogView.destroyWorld}" update="message">
    <p:confirm header="Confirmation" message="Are you sure?" icon="ui-icon-alert" />
</p:commandButton>

<p:confirmDialog global="true" showEffect="fade" hideEffect="fade">
    <p:commandButton value="Yes" type="button" styleClass="ui-confirmdialog-yes" icon="ui-icon-check" />
    <p:commandButton value="No" type="button" styleClass="ui-confirmdialog-no" icon="ui-icon-close" />
</p:confirmDialog>

1 Ответ

0 голосов
/ 02 ноября 2018

вы можете сделать следующее

 <p:commandButton value="Destroy the World" onclick="PF('confirmDialogwidget').show();">
 </p:commandButton>



<p:confirmDialog global="true" showEffect="fade" hideEffect="fade" header="Are you sure?"
                     widgetVar="confirmDialogwidget">
    <p:commandButton value="Yes" type="button" styleClass="ui-confirmdialog-yes" icon="ui-icon-check" />
    <p:commandButton value="No" type="button" styleClass="ui-confirmdialog-no" icon="ui-icon-close" 
                     onclick="PF('confirmDialogwidget').hide();" />
</p:confirmDialog>

или также используя боб

<p:commandButton value="Destroy the World" actionListener="#{dialogView.destroyWorld}">
</p:commandButton>


<p:confirmDialog global="true" showEffect="fade" hideEffect="fade" header="Are you sure?"
                 widgetVar="confirmDialogwidget">
    <p:commandButton value="Yes" type="button" styleClass="ui-confirmdialog-yes" icon="ui-icon-check" />
    <p:commandButton value="No" type="button" styleClass="ui-confirmdialog-no" icon="ui-icon-close" 
                     onclick="PF('confirmDialogwidget').hide();"/>
</p:confirmDialog>

Вот оно открывается из боба

 public void destroyWorld(){
    RequestContext.getCurrentInstance().execute("PF('confirmDialogwidget').show();")
}
...