今天遇到了一个问题,顾客情报登录页面,密码输入框和密码确认输入框下有一个label标签,提示“最少6文字”,正常情况下显示黑色,如输入不符合规定,会出现error message,密码输入框的“最少6文字”会变红,但是密码确认输入框下的文字却不变颜色。
原因是errorSpanField.tag文件下有一个判断,当有error message出现时,<div class="form-group has-error">下生成label,否则就是<div class="form-group">下生成正常的label,两者css不同,显示颜色不同。
具体为什么两个输入框都有错,却有一个没进入<div class = "has-error">下,不知道没细研究,暂且存疑。
解决方法:监测第一个label,当他为红色,第二个label也随之变为红色。
在自动加载的js里,追加一个fuction,
passwordErrorMessage:function(){
if($(‘.pswerror’).children().hasClass(‘has-error’)){
$(‘.checkPswError’).children().addClass(‘has-error’);
}
}
class名前的" . "不要忘记!!!
源代码找到了:
<spring:bind path=”${not empty errorPath ? errorPath : path}”>
<c:choose>
<c:when test=”${not empty status.errorMessage}”>
<div class=”form-group has-error”>
<jsp:doBody />
<div class = "help-block">
<form:errors path="${not empty errorPath ? ' ' : path }" />
</div>
</div>
</c:when>
<c:otherwise>
<div class = "form-group">
<jsp:doBody />
</div>
</c:otherwise>
</c:choose>
</spring:bind>