为什么jQuery验证插件配置在初始化后无效?

时间:2014-10-17 13:48:34

标签: jquery validation

我正在尝试使用this jQuery validation plugin设置表单验证。我的计划是使用初始配置的验证对象加载页面,并在需要时将其配置重置为我的需要。但它没有按预期工作。初始化后,它不接受新的配置对象。这是我的代码:

<form id="testform">
   <input type="text" name="myField" value="" id="myFieldID" class="myFieldClass" placeholder="Type something..." title="Please fill myField" />
   <input type="submit" class="validate" name="submit" value="Test"/>
</form>

<script>
var validator = $('#testform').validate({debug: true});

validator = $('#testform').validate({
   debug: false,
   rules: {
      myField : "required"
   },
   messages: {
      myField : "Hello Other!"
   }
});
</script>

在转储验证程序对象时进行初始化后,它会一直显示debug: true并且没有规则或消息。 Here is a jsfiddle为此。 我上下检查了作者的文档并搜索了这个论坛,但找不到令人满意的答案。

有人在这里可以教我/我们为什么这种方式不起作用以及如何正确地做到这一点,拜托?

1 个答案:

答案 0 :(得分:0)

看起来它只是配置一次。它有一个rules()方法来改变规则,如果你想要的话。但是,它在jquery数据库中存储了对验证器的引用。我们可以使用$('#testform').data('validator', null);清除该引用。这是欺骗脚本再次运行安装程序,所以测试它以确保它不会做任何疯狂的事情。

http://jsfiddle.net/bva07bk1/