Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Reseting the form when usering the jquery validations plugin

I have a simple form like below that I have added the jQuery validations plugin onto (http://docs.jquery.com/Plugins/Validation). I have this form in a modal popup window so if there are errors and the user closes the window when they open it again the form still has the errors. In my popup close callback I tried calling resetForm() but it says the method doesn't exist.

Form 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>

Popup Close Callback:

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

Thanks in advance for the help.

like image 455
John Duff Avatar asked Dec 29 '22 05:12

John Duff


2 Answers

resetForm is part of the object returned by the validate method, not the form. Example:

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

The validation plugin stores a reference to the validation object in the form's data store.

like image 170
CalebD Avatar answered Dec 31 '22 18:12

CalebD


If it really is a short form with just a few elements, you could simply reset them by hand when the close button on the modal window is clicked, like so:

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

like image 45
Nate B Avatar answered Dec 31 '22 19:12

Nate B