在弹出窗口中显示facesontext消息以验证对话框中的输入

伊娃·玛丽亚姆(Eva Mariam)

我对如何在对话框中显示facescontext消息有疑问。这使用了primefaces 4.0,JSF。

我想在弹出对话框中显示facescontext消息(单击另一个对话框中的命令按钮时出现)。

方法1:假设视图文件像

<p:commandButton id=”btn”  oncomplete=”dlg.show()”/>
<p:dialod id=”dlg_id” widgetVar=”dlg”>
    <h:inputText id=”name”/>
    <p:commandButton id=”btn1” actionListener=”someBean.someMethod()” oncomplete=”dlg1.show()”/>
</p:dialog>
<p:dialog id=”dlg1_id” widgetVar=”dlg1”>
    <h:messages id=”error_msgs” value=”#{facesContext.messageList}”
</p:dialog>

BackingBean(someBean)

public void someMethod() {
        RequestContext.getCurrentInstance().addCallBackParam(“facesMessageAvailable”,true);
        FacesContext.getCurrentInstance().addMessage(“error_msgs”,new FacesMessage(…,”Name is Required”,…));
    }

上面的方法显示了弹出框。但是,弹出框中显示的值就像javax.beans.context@1ggh34ea。然后我尝试使用UI组件绑定。

方法2:

查看文件

<p:commandButton id=”btn”  oncomplete=”dlg.show()”/>
<p:dialog id=”dlg_id” widgetVar=”dlg”>
    <h:inputText id=”name”/>
    <p:commandButton id=”btn1” actionListener=”someBean.someMethod()” oncomplete=”dlg1.show()”/>
</p:dialog>
<p:dialog id=”dlg1_id” widgetVar=”dlg1”>
    <h:outputText id=”msg” binding=”someBean.outText”/>
</p:dialog>

BackingBean(someBean)

private UIComponent outText;
//getter and setter of outText
public void someMethod() {
    RequestContext.getCurrentInstance().addCallBackParam(“facesMessageAvailable”,true);
    FacesContext.getCurrentInstance().addMessage(outText.getClientId() , new FacesMessage(…,”Name is Required”,…));
}

但是,这显示了一个空白的空弹出窗口。然后,我尝试使用JOptionPane。但是它会产生一些逻辑错误。

我将不胜感激任何帮助。当我从内存中键入代码时,语法可能不正确。

Nosnhoj

我尝试了您的方法1,发现有一些错误:

使用 <h:messages>

1.您应指定的update属性<p:commandButton>
2.No需要指定value=”#{facesContext.messageList}”<h:messages>(有也没有这样的属性)。

因此,执行完这些操作后,您的代码应如下所示:

    <h:form>
        <p:commandButton id="btn"  oncomplete="dlg.show()"/>

        <p:dialog id="dlg_id" widgetVar="dlg">
            <h:inputText id="name"/>
            <p:commandButton id="btn1" actionListener="#{someBean.someMethod()}" oncomplete="dlg1.show()" update="dlg1_id"/>
        </p:dialog>

        <p:dialog id="dlg1_id" widgetVar="dlg1">
            <h:messages id="error_msgs"/>
        </p:dialog>

    </h:form>  

结果看起来像:
在此处输入图片说明


使用 <h:message>

它在<h:messages>上面使用,虽然您可能想要使用<h:message>,但您似乎希望使用来显示消息error_msgs为此,您需要指定client_id而不是id,因此请尝试以下操作:

页:

    <h:form>
        <p:commandButton id="btn"  oncomplete="dlg.show()"/>

        <p:dialog id="dlg_id" widgetVar="dlg">
            <h:inputText id="name"/>
            <p:commandButton id="btn1" actionListener="#{someBean.someMethod()}" oncomplete="dlg1.show()" update="dlg1_id"/>
        </p:dialog>

        <p:dialog id="dlg1_id" widgetVar="dlg1">
            <h:message for="j_idt5"/>
        </p:dialog>
    </h:form> 

后备豆:

public void someMethod(){
    RequestContext.getCurrentInstance().addCallbackParam("facesMessageAvailable",true);
    FacesContext.getCurrentInstance().addMessage("j_idt5",new FacesMessage("Name is Required"));
}

请注意,这j_idt5是的client_id <h:inputText>
我怎么知道client_id?只需右键单击浏览器中的页面并查看页面源代码,查看您感兴趣的组件,即可找到cliend_id

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在弹出窗口中显示FacesonText消息以验证对话框中的输入

来自分类Dev

对话框弹出窗口中的jQuery和表单验证

来自分类Dev

主窗口中的pyqt5自定义对话框输入弹出窗口

来自分类Dev

如何在弹出窗口中使用对话框?

来自分类Dev

显示但未弹出的jQuery对话框弹出窗口

来自分类Dev

不显示“角度材料”对话框的弹出窗口

来自分类Dev

如何显示顺序对话框弹出窗口?

来自分类Dev

如何在弹出窗口中显示jquery验证错误消息?

来自分类Dev

显示消息对话框

来自分类Dev

如何使用HTML在对话框弹出窗口中添加iframe元素标签

来自分类Dev

在错误消息对话框之后显示输入对话框

来自分类Dev

使“显示对话框”窗口成为applescript中的前窗口

来自分类Dev

Android弹出窗口与Android对话框

来自分类Dev

动态jQuery对话框弹出窗口

来自分类Dev

在其他窗口和/或对话框中显示QLineEdit的输入?

来自分类Dev

输入验证失败时继续显示对话框

来自分类Dev

弹出验证错误消息以主窗体显示,而不是在弹出窗口中显示如何解决它

来自分类Dev

FB feed对话框在弹出窗口中不显示缩略图

来自分类Dev

Rails中的RTF编辑器:在链接对话框窗口中显示链接的目标选项卡

来自分类Dev

Google Spreadsheet弹出输入对话框

来自分类Dev

在消息对话框中输入文本?ContentDialog?

来自分类Dev

如何在弹出窗口中显示消息?

来自分类Dev

在Cordova 3.6中使用iframe和jquery移动对话框弹出窗口使用Google Doc Viewer显示文档

来自分类Dev

如何显示弹出对话框?

来自分类Dev

在CL Java程序中显示多个消息对话框

来自分类Dev

猛击一线以在GUI对话框窗口中显示所有`gsettings'

来自分类Dev

如何在C#中验证消息框弹出窗口?

来自分类Dev

在输入对话框Matlab中显示图

来自分类Dev

在对话框中显示输入的值

Related 相关文章

  1. 1

    在弹出窗口中显示FacesonText消息以验证对话框中的输入

  2. 2

    对话框弹出窗口中的jQuery和表单验证

  3. 3

    主窗口中的pyqt5自定义对话框输入弹出窗口

  4. 4

    如何在弹出窗口中使用对话框?

  5. 5

    显示但未弹出的jQuery对话框弹出窗口

  6. 6

    不显示“角度材料”对话框的弹出窗口

  7. 7

    如何显示顺序对话框弹出窗口?

  8. 8

    如何在弹出窗口中显示jquery验证错误消息?

  9. 9

    显示消息对话框

  10. 10

    如何使用HTML在对话框弹出窗口中添加iframe元素标签

  11. 11

    在错误消息对话框之后显示输入对话框

  12. 12

    使“显示对话框”窗口成为applescript中的前窗口

  13. 13

    Android弹出窗口与Android对话框

  14. 14

    动态jQuery对话框弹出窗口

  15. 15

    在其他窗口和/或对话框中显示QLineEdit的输入?

  16. 16

    输入验证失败时继续显示对话框

  17. 17

    弹出验证错误消息以主窗体显示,而不是在弹出窗口中显示如何解决它

  18. 18

    FB feed对话框在弹出窗口中不显示缩略图

  19. 19

    Rails中的RTF编辑器:在链接对话框窗口中显示链接的目标选项卡

  20. 20

    Google Spreadsheet弹出输入对话框

  21. 21

    在消息对话框中输入文本?ContentDialog?

  22. 22

    如何在弹出窗口中显示消息?

  23. 23

    在Cordova 3.6中使用iframe和jquery移动对话框弹出窗口使用Google Doc Viewer显示文档

  24. 24

    如何显示弹出对话框?

  25. 25

    在CL Java程序中显示多个消息对话框

  26. 26

    猛击一线以在GUI对话框窗口中显示所有`gsettings'

  27. 27

    如何在C#中验证消息框弹出窗口?

  28. 28

    在输入对话框Matlab中显示图

  29. 29

    在对话框中显示输入的值

热门标签

归档