Сброс формы при использовании плагина jquery validations - PullRequest
4 голосов
/ 14 января 2010

У меня есть простая форма, подобная приведенной ниже, в которую я добавил плагин проверки jQuery (http://docs.jquery.com/Plugins/Validation). У меня есть эта форма в модальном всплывающем окне, поэтому, если есть ошибки, и пользователь закрывает окно, когда они его открывают снова форма все еще содержит ошибки. В моем всплывающем обратном вызове close я попытался вызвать resetForm (), но он говорит, что метод не существует.

Форма HTML:

 <form class="validations" id="commentForm" method="get" action="">
   <p>
     <label for="name">Name</label>
     <em>*</em><input id="name" name="name" size="25" class="required" minlength="2" />
   </p>
   <p>
     <label for="email">E-Mail</label>
     <em>*</em><input id="email" name="email" size="25"  class="required email" />
   </p>
 </form>

Всплывающее окно закрытия обратного вызова:

function(){
  $(this).find('form.validations').resetForm();
}

Заранее спасибо за помощь.

Ответы [ 2 ]

9 голосов
/ 14 января 2010

resetForm является частью объекта, возвращаемого методом validate, а не формой. Пример:

var validate = $('#commentForm').validate({ ... });
// Later...
validate.resetForm();
// Or if variable scope is in the way...
$('#commentForm').data('validator').resetForm();

Плагин проверки сохраняет ссылку на объект проверки в хранилище данных формы.

1 голос
/ 14 января 2010

Если это действительно короткая форма с несколькими элементами, вы можете просто сбросить их вручную при нажатии кнопки закрытия в модальном окне, например, так:

$("input[name='formelementName']").val("");

...