Primefaces p:menuitem with p:确认不支持

时间:2014-08-21 13:12:43

标签: primefaces confirm

我试图在p:menuitem上调用确认对话框:

<p:menuitem value="#{text['button.archive']}"  actionListener="#{tasksbacking.archive}" icon="ui-icon-locked">                            
    <p:confirm header="#{text['button.archive.confirm.header']}" 
               message="#{text['button.archive.confirm.message']}"
               icon="ui-icon-alert"/>
</p:menuitem>

但根据Primefaces 5中的文档:

  

目前,p:commandButton和p:commandLink

支持p:confirm

有没有办法做到这一点?

2 个答案:

答案 0 :(得分:4)

我找到了更好的解决方法here

用两个词 - commandlink加入menuitem,如下所示:

....
<p:menuitem>
    <p:commandLink>
        <p:confirm>
        </p:confirm>
    </p:commandLink>
</p:menuitem>
....

您可以使用此设置进行全局确认。它使用PF 5.1进行测试。此外,它似乎很快就会在PrimeFaces中实现。

答案 1 :(得分:0)

我今天提出了这个问题。经过一些尝试和错误,并尊重评论中已发布链接的信息,如果尝试执行以下操作,并且意外地,这对我有用。我在PF 5.3

<p:menuitem value="Löschen"
    actionListener="#{importerDefinitionView.deleteSelectedFile()}"
    update="messages">
    <p:confirm header="Datei Löschen"
        message="Soll die Datei wirklich gelöscht werden?"
        icon="ui-icon-alert" />
</p:menuitem>

相关的确认对话:

<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>