HiveBrain v1.2.0
Get Started
← Back to all entries
patternjavascriptModerate

Simple form validation script

Submitted by: @import:stackexchange-codereview··
0
Viewed 0 times
scriptformsimplevalidation

Problem

This is a simple form validation script.

I'd like to:

  • improve the jQuery validation



  • simplify the jQuery code



Questions:

  • Should I be exporting pure JS validation to avoid potential conflicts with other libraries that users might have installed?



  • Is it worth the effort or should I stick with my jQuery code?



  • Is there a way to reduce the chances for conflict with the jQuery code without having to reworking it to JS?




/* – ' + errors[type] + '');
    }

    $('.required, .email, .numeric, .alpha').each(function(){
        var value       = $(this).val();
        var valueExists = value.length === 0 ? false : true;

        var required    = $(this).hasClass('required');
        var email       = $(this).hasClass('email');
        var numeric     = $(this).hasClass('numeric');
        var alpha       = $(this).hasClass('alpha');

        if (required && value.length===0) {
            displayError(this,'required');
            pass=false;
        }

        else if (email && valueExists && !tests.email.test(value)) {
            displayError(this,'email');
            pass=false;
        }

        else if (numeric && valueExists && !tests.numeric.test(value)) {
            displayError(this,'numeric');
            pass=false;
        }

        else if (alpha && valueExists && !tests.alpha.test(value)) {
            displayError(this,'alpha');
            pass=false;
        }
    });

    return pass;
});
});
/*]]>*/

Solution

To avoid conflict with any other libraries, wrap your code using the jQuery function, and additionally call jQuery.noConflict();

The only conflict you may have is if somebody else imported an object named jQuery into the global namespace.

Reference: http://docs.jquery.com/Using_jQuery_with_Other_Libraries

Example:

jQuery.noConflict();
jQuery(document).ready(function($){
 //This is a jQuery function
 $('.myClass');
});

Code Snippets

jQuery.noConflict();
jQuery(document).ready(function($){
 //This is a jQuery function
 $('.myClass');
});

Context

StackExchange Code Review Q#5927, answer score: 11

Revisions (0)

No revisions yet.