【问题标题】:How to popup a dialog box in jsf如何在jsf中弹出一个对话框
【发布时间】:2026-02-07 22:10:01
【问题描述】:

我想在 JSF 中弹出一个窗口,当用户提交值时,应该会弹出一个带有创建的 id 的对话框,当用户单击对话框中的确定按钮时,控件应该转到下一个选项卡。

我使用带有 oncomplete 属性的主要面孔按钮来显示其工作正常,但问题是我在 bean 中进行了一些验证(如电子邮件地址已经存在)。所以到时候验证错误显示对话框也弹出.

那么任何人都可以指导我如何仅在创建 id 时弹出对话框。

【问题讨论】:

  • 你能告诉我们你的代码吗?

标签: jsf


【解决方案1】:

你可以这样做

<p:commandButton value="Show Only When No Validation Error"
    actionListener="#{myBean.myMethod}"
    oncomplete="if (args &amp;&amp; !args.validationFailed) myDialog.show()" />

或者在你的java代码里面做这样的事情

public void myMethod() {
    //some code goes here
    if (!errorFound) {
        RequestContext.getCurrentInstance().execute("myDialog.show()");
    }
}

【讨论】: