【问题标题】:Jquery Validation equalTo not working with bootstrapJquery Validation equalTo 不使用引导程序
【发布时间】:2020-09-17 15:38:21
【问题描述】:

我有一个包含密码字段的表单,我想通过比较两个密码字段的值来验证它:

<div class="form-group">
<label for="pwd">Password:</label>
<input type="password" class="form-control" id="pwd" name="pwd" required>
</div>
<div class="form-group">
<label for="repwd">Retype Password:</label>
<input type="password" class="form-control" id="repwd" name="repwd" required>
</div>

我的 jquery 验证规则是:

$("#registerform").validate({
    rules: {
        pwd: {
            required: true,
            equalTo: "#repwd"
        },
        repwd: {
            required: true,
            equalTo: "#pwd"
        }
    },
    messages: {
        repwd: {
            equalTo: "Should be equal"
        }
    },
    onkeyup: function(element){
        this.element(element);
    },
    submitHandler: function(form) {
    // do other things for a valid form
     form.submit();
    },
});

 $('#pwd').on('change blur keyup', function() {
    $('#pwd').valid();
});

所需的规则已验证,但 equalTo 未验证。我该如何解决这个问题?

【问题讨论】:

    标签: jquery bootstrap-4 jquery-validate


    【解决方案1】:

    您可以简单地将equalTo 添加到pwd,因为这里的repwd 应该等于pwd,而不是与您在jquery 代码更改中所做的相反,它应该可以工作。

    演示代码

    $("#registerform").validate({
      rules: {
        pwd: "required", //pwd required
        repwd: {
          required: true, //repwd required
          equalTo: "#pwd" //should be equal to pwd
        }
    
      },
      onkeyup: function(element) {
        this.element(element);
      },
      submitHandler: function(form) {
        // do other things for a valid form
        form.submit();
      },
    });
    
    $('#pwd').on('change blur keyup', function() {
      $('#pwd').valid();
    });
    <script src="https://code.jquery.com/jquery-1.11.1.min.js"></script>
    <script src="https://cdn.jsdelivr.net/jquery.validation/1.16.0/jquery.validate.min.js"></script>
    <script src="https://cdn.jsdelivr.net/jquery.validation/1.16.0/additional-methods.min.js"></script>
    <form id="registerform">
      <div class="form-group">
        <label for="pwd">Password:</label>
        <input type="password" class="form-control" id="pwd" name="pwd" required>
      </div>
      <div class="form-group">
        <label for="repwd">Retype Password:</label>
        <input type="password" class="form-control" id="repwd" name="repwd" required>
      </div>
    </form>

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-07-12
      • 2018-09-15
      • 2021-04-27
      • 1970-01-01
      • 1970-01-01
      • 2018-02-14
      • 2014-01-08
      相关资源
      最近更新 更多