struts2 根据验证异常信息的不同,显示不同样式
struts2 根据验证错误信息的不同,显示不同样式
可以通过struts2 的if else 标签及EL表达式,实现根据错误信息的不同,自定义错误信息的样式,当然也可以直接自定义错误信息的样式。
<td><s:textfield name="email"></s:textfield></td> <td> <div id="emailTip" style="width:280px"> <s:if test="#request.fieldErrors.email==NULL">...........</s:if> <s:else>xxxx${fieldErrors.email[0]}xxxxx</s:else> </div> </td>
以上代码的意思是,当验证没有错误信息时的样式是.........(自己写html),当有错误信息时样式是xxxxx。
解释一下:
我们除了用<s:fielderror></s:fielderror>标签可以获得错误信息外还可以用EL表达式获取,表达式为${fieldErrors.email[0]}。
但是在struts2的标签中不能这样用,必须写成 #request.fieldErrors.email[0] 才能得到错误信息,而要判断是否有错误信息则用 #request.fieldErrors.email==NULL
最后,如果在jsp页面上EL表达式失效,则需要在jsp上添加 <%@ page isELIgnored="false" %>