当前位置:  开发笔记 > 后端 > 正文

如何更好地使用JSF h:消息?

如何解决《如何更好地使用JSFh:消息?》经验,为你挑选了1个好方法。

我的目标是使用h:消息来传达用户错误和确认消息.显示这两种不同消息的CSS样式是不同的.实际上我想在确认消息旁边使用一个图像.对于Eg:

.

所以我尝试根据2个不同的客户端ID向Faces Context添加消息


            
                
            
        
        
            
                
            
        

并在java层

FacesMessage facesMessage = new FacesMessage(Constants.saveMessageConfirm);
    FacesContext.getCurrentInstance().addMessage(Constants.STATIC_CONFIRM_MSG_CLIENT_ID,  facesMessage);

但是,即使我向客户端ID confirm_message添加消息 - 并且仅向confirm_message添加 - 而不是error_message - 消息以2种不同的样式显示两次(请参阅上面的HTML)

2个问题:

1)这里有什么问题?

2)如果我想在第二个tr中显示td内的图像,并且在确认消息存在时有条件地显示第二个tr - 最好的方法是什么?

谢谢,



1> BalusC..:

h:messages显示所有的消息,这也已经显示在的那些h:message页面.但是,您可以将其设置为null使用客户端ID 显示消息globalOnly="true".


您还可以根据以下内容为消息提供不同的样式FacesMessage.Severity:


例如,这个CSS隐藏INFO消息并使ERROR消息变为红色:

.info {
     display: none;
}
.error {
     color: red;
}

您可以使用redisplay="false"它告诉它不通过ee显示已显示的消息.


您只需要确保它所有其他消息组件之后放置在组件树中.如果需要,您可以使用CSS将其重新定位在顶部的某个位置.

只是要确定,

facesContext.addMessage("clientId",  facesMessage);

这将把给定的消息附加到一个不像你想象的那样.

推荐阅读
云聪京初瑞子_617
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有