Как выполнить проверку только при отправке — плагин проверки jQuery

Я хочу, чтобы плагин 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>

person coder_bro    schedule 21.10.2009    source источник


Ответы (2)


Вам нужно отключить все три обработчика, если вы не хотите получать абсолютно никаких ошибок перед отправкой, и вы можете выполнить проверку следующим образом:

$('#commentForm').validate({
    onfocusout: false,
    onkeyup: false,
    onclick: false
})
person Corey Ballou    schedule 21.10.2009
comment
можно ли это сделать по-другому для конкретных полей ввода? т. е. одно поле проверяется при нажатии клавиши, а другое не в той же форме. - person Imran Bughio; 07.08.2015

Вы должны изменить параметр по умолчанию для onfocusout

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

Дополнительные параметры для включения или отключения перечислены здесь — http://docs.jquery.com/Plugins/Validation/validate#toptions

person Alex Sexton    schedule 21.10.2009