如何在仅提交时执行验证 - jQuery Validation插件

时间:2009-10-21 10:08:28

标签: jquery jquery-validate

我希望jQuery Validate插件仅在表单提交时显示验证消息,而不是在输入字段的焦点丢失时显示。我如何实现这一目标?

现在我正在遵循这种模式,这会在失去焦点事件后导致验证:

<html>
<head>
 <script>
  $(document).ready(function(){
    $("#commentForm").validate();
  });
  </script>

</head>
<body>
<form class="cmxform" id="commentForm" method="get" action="">
 <fieldset>
<p>
     <label for="cname">Name</label>
     <em>*</em><input id="cname" name="name" size="25" class="required" minlength="2" />
   </p>
</fieldset>
</form>
</body>
</html>

2 个答案:

答案 0 :(得分:18)

如果您希望在提交前完全没有收到任何错误,则需要禁用所有三个处理程序,您可以执行以下验证:

$('#commentForm').validate({
    onfocusout: false,
    onkeyup: false,
    onclick: false
})

答案 1 :(得分:2)

您必须更改onfocusout的默认选项

$(".selector").validate({
   onfocusout: false
})

此处列出了更多启用或停用选项 - http://docs.jquery.com/Plugins/Validation/validate#toptions