JSP中的Spring-使用JQ进行密码确认验证

时间:2019-03-05 08:52:44

标签: javascript html spring jsp

我在将JQ确认验证添加到密码字段JSP页面时遇到问题。我正在使用this jQuery-Form-Validator

使用:<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>

在密码字段和密码确认字段上使用JSP输入标签<form:input>时-验证总是失败,并且我得到类似密码不相等的错误。当我使用<input>之类的normal-html标签时,everything效果很好,但是出于明显的原因,我不应该这样做。当然,我对此有后端验证,但是我也想在前端进行验证。

这不起作用:总是弹出:

  

无法确认输入值

<spring:bind path="password">
  <div class="form-group ${status.error ? 'has-error' : ''}">
    <form:input type="password" 
                path="password" 
                class="form-control" 
                placeholder="PASSWORD" 
                data-validation="length" 
                data-validation-length="min8" 
                name="pass_confirmation">
    </form:input>
    <div class="register-error">
      <form:errors path="password"></form:errors>
    </div>
  </div>
</spring:bind>
<spring:bind path="passwordConfirm">
  <div class="form-group ${status.error ? 'has-error' : ''}">
    <form:input type="password" 
                path="passwordConfirm" 
                class="form-control" 
                placeholder="PASSWORD CONFIRM" 
                name="pass"
                data-validation="confirmation">
    </form:input>
    <div class="register-error">
      <form:errors path="passwordConfirm"></form:errors>
    </div>
  </div>
</spring:bind>  

这很好用:但是没有<form:input>标签

<spring:bind path="password">
  <div class="form-group ${status.error ? 'has-error' : ''}">
    <input type="password" 
           path="password" 
           class="form-control" 
           placeholder="PASSWORD" 
           data-validation="length" 
           data-validation-length="min8" 
           name="pass_confirmation">
    </input>
    <div class="register-error">
      <form:errors path="password"></form:errors>
    </div>
  </div>
</spring:bind>
<spring:bind path="passwordConfirm">
  <div class="form-group ${status.error ? 'has-error' : ''}">
    <input type="password" 
           path="passwordConfirm" 
           class="form-control" 
           placeholder="PASSWORD CONFIRM" 
           name="pass"
           data-validation="confirmation">
    </input>
    <div class="register-error">
      <form:errors path="passwordConfirm"></form:errors>
    </div>
  </div>
</spring:bind>  

编辑:我知道为什么它不起作用,但是我仍然没有解决方案。 使用<form:input>和属性type="password"或使用<form:password>总是用<input name="password">渲染html,即使我之前是<form:input type="password" name="pass_confirmation">。属性name始终被覆盖。 因此,我现在有不同的问题。当JSP渲染html时,有什么方法可以强制不覆盖属性name

0 个答案:

没有答案