如何在primefaces中重新创建对话框

时间:2017-07-18 10:34:11

标签: jsf primefaces dialog

我有一个想要重新创建的对话框,而不是用当前内容重新显示。我用:

RequestContext.getCurrentInstance().execute("PF('dialogId').show()");

显示对话框和

RequestContext.getCurrentInstance().execute("PF('dialogId').hide()");

隐藏来自辅助bean的对话框。

如果我使用

RequestContext.getCurrentInstance().execute("PF('dialogId').content.empty()");
在show()之前

然后对话框为空。

我也试过

RequestContext.getCurrentInstance().execute("PF('dialogId').remove()");
在show()之前

但是根本没有显示对话框。

我想重新创建而不是重新显示的原因是因为我在对话框bean init函数中创建了TreeNodes。必须在显示对话框之前从数据库中获取Treenodes数据。

我只想在每次显示对话框时调用dialog bean的init函数,而不仅仅是第一次。

我的初始化功能:

@PostConstruct
public void init(){
    root = new DefaultTreeNode("Root Node", null);
    // code for creating other TreeNodes
}

0 个答案:

没有答案