如何在打开页面时打开对话框

时间:2015-10-16 14:31:19

标签: jsf primefaces dialog

在我们的一个页面中,我们有一个搜索按钮,用于打开搜索对话框,以便用户可以从远程系统中搜索和导入一些数据。

现在我得到了新的要求,每次打开页面时都必须显示相同的对话框 - 但只有当页面将用于创建新的注册表时,在更新模式下,只有当用户单击时才会显示按钮。

我已经尝试了一些东西,我可以使用Primefaces引擎通过MB调用对话框,如下所示:

 RequestContext.getCurrentInstance().execute("dialogArmaBos.show()")

此命令适用于按钮大小写,但我可以在页面打开时使其正常工作。如果我尝试在PostConstruct中使用没有任何反应。

我还试用了<f:event type="preRenderView" ... <f:metadata ...,但没有任何变化。

有没有办法实现呢?

1 个答案:

答案 0 :(得分:3)

根据神话般的PrimeFaces documentation有一个明显的属性。从文档引用:

  

visible false Boolean启用后,默认情况下会显示对话框。

因此,只需在该属性中使用EL即可将其显示在pageload上

<p:dialog visible="#{myBean.createMode}"... >

并在该bean中有一个布尔字段,如果处于创建模式,则返回true。

对于其余的,您可以使用客户端api显示/隐藏它(如果需要)

相关问题