如何动态生成我的表单验证内容并使其工作?

时间:2016-03-23 18:11:49

标签: javascript jquery html

我的代码中有一个复选框,用于选择是或否我想在表单中输入errorClass。所以我的表单验证内容是自动生成的,但它只在第一次工作。

我的HTML:

<form id="myForm">
   <label>Email <input type="text" name="email" /><label>
   <input type="submit" value="Send" />
</form>

<label>Set errorClass <input type="checkbox" name="errorClass" /></label>

我的jQuery:

$('input[name="errorClass"]').change(function() {
   var class = ($('input[name="errorClass"]').checked) ? "has-error" : "";

   $("#myForm").validate({
      rules: { email: 'required' },
      errorClass: class
   });
});

每次选中或取消选中复选框时,如何使其正常工作?

1 个答案:

答案 0 :(得分:0)

变量名' class '可能会抛出错误,因为它是保留字。同样,从更改功能内部,您可以使用“ this ”关键字引用该对象。 请尝试以下方法:

$('input[name="errorClass"]').change(function() {
  if(this.checked){
    var cls = "has-error";
    $("#myForm").validate({
      rules: { email: 'required' },
      errorClass: class
    });
  } else {
    var validator = $( "#myForm" ).validate();
    validator.resetForm();
  }
});

希望这有帮助。