当我在h:表单中提交的数据有效时,我想知道如何在JSF页面上添加“成功”消息。例如“记录成功插入”。我尝试使用FacesContext.addMessage(String clientId,String message),但消息显示在同一个h:messages框中,如果数据无效,则会显示错误消息,从而导致文本显示为红色。我希望不使用JavaScript警报。
非常感谢任何帮助。
答案 0 :(得分:9)
使用不同的样式类
h:messages infoStyle="color:darkgreen" errorStyle="color:darkred"
添加消息时 为了成功
FacesMessage facesMessage = new FacesMessage(FacesMessage.SEVERITY_INFO, message, null);
失败
FacesMessage facesMessage = new FacesMessage(FacesMessage.SEVERITY_ERROR, message, null);
答案 1 :(得分:3)
使用null
作为客户端ID使其成为全局消息,并在视图中使用以下内容仅显示全局消息:
<h:messages globalOnly="true" />
根据功能要求,将其放在表单下方或上方的某处。如果您已经使用<h:messages/>
为每个输入元素显示验证错误而不是<h:message/>
,那么您需要在此设置globalOnly="false"
。