在jsf primefaces中点击p:commandLink时,对话框无法打开?

问题描述 投票:0回答:1

我试图在JSF中使用p:commandLink打开一个对话框。

<p:commandLink id="linkId" update="@this someDialogId" value="open dialog" action="#{someBean.someAction(id)}"/>

<p:dialog closable="true" id="someDialogId" closeOnEscape="true" maximizable="true" minimizable="true" fitViewport="true" modal="true" header="Task Details" rendered="#{someBean.displayDiag}" visible="#{someBean.displayDiag}" >

    // Something displayed
</p:dialog>

但是当我点击p:commandLink时,什么都没有发生?

这个 p:commandLink和p:dialog 位于同一个表单中的不同div中。

jsf primefaces primefaces-dialog-framework
1个回答
1
投票

请看PrimeFaces的展示。https:/www.primefaces.orgshowcaseuioverlaydialogbasic.xhtml

你更新了对话框,但你没有打开它。

首先,你的对话框需要一个widgetVar属性。比如说它是 "myDialog"。

然后在你的commandLink中,你为oncomplete添加一个java脚本处理程序。在这里你就可以打开对话框了。

像这样 <p:commandLink ... oncomplete="PF('myDialog').show()" ... />

© www.soinside.com 2019 - 2024. All rights reserved.