If your using the jQuery validation plugin you might sometimes see a stutter validation when your typing in an input field. This is most commonly seen when your using custom validation rules which are firing off ajax requests to validate the users input, such as checking if a users email is unique in the database. Stutter = no good.

To remove the consant validation checking add the following parameters to the form validate function:

onkeyup: false,
   onclick: false,
   onfocusout: false,

So your validation function might look something like this:

   onkeyup: false,
   onclick: false,
   onfocusout: false,

   //validation rules
   rules: {



   //validation messages
   messages: {


   //submit handler
   submitHandler: function(form)




Other $.validate() options

messages: {},
groups: {},
rules: {},
errorClass: "error",
validClass: "valid",
errorElement: "label",
focusInvalid: true,
errorContainer: $( [] ),
errorLabelContainer: $( [] ),
onsubmit: true,
ignore: ":hidden",
ignoreTitle: false,
onfocusin: function(element, event) { ... },
onfocusout: function(element, event) { ... },
onkeyup: function(element, event) { ... },
onclick: function(element, event) { ... },
highlight: function(element, errorClass, validClass) { ... },
unhighlight: function(element, errorClass, validClass) { ... }
Sam Deering is a Front-end Web Developer who specialises in JavaScript & jQuery. Sam is driven and passionate about sharing his knowledge to educate others.

Free Guide:

How to Choose the Right Charting Library for Your Application

How do you make sure that the charting library you choose has everything you need? Sign up to receive this detailed guide from FusionCharts, which explores all the factors you need to consider before making the decision.

  • jc

    this does not work on me

  • Achmed Ded Terrorist

    this must be one of the most incomplete and useless posts I have ever read

  • Idus

    Thanks for the post! Your information was very visual and easy to parse at-a-glance. This helped clarify placement of parameters within the validation call.

  • Anderson Smith

    user_email: {
    required: true,
    email: true,
    remote: {
    url: baseUrl+”/sign/check-signup.php”,
    type: “post”,
    // cache: false,
    // dataType: “json”,
    data: {
    user_email: function() {
    return $(“#user_email”).val();
    success: function(data){
    // console.clear();

    if(data == 1){
    $(“#user_email”).after(‘Email address is already taken.’);
    } else{
    error: function(data){

    Please tell me what is issue in this code ? When remote is remove then form submit and when remote has then form is not submit.

Special Offer
Free course!

Git into it! Bonus course Introduction to Git is yours when you take up a free 14 day SitePoint Premium trial.