I-M-JM
I-M-JM

Reputation: 15950

jQuery validate : multiple form, single validation

I have 2 forms, namely (ids mentioned) 'add_product' and 'edit_product'

Now I am using jQuery validation plug-in, both the forms have same validation (similar to mentioned in following example)

jQuery("#add_product").validate({
    rules: {
        name:"required",
        price:"number"
    },
    messages: {
        name:"Please enter Plan Name",
        price:"Enter a valid number"
    }

});

and

jQuery("#edit_product").validate({
    rules: {
        name:"required",
        price:"number"
    },
    messages: {
        name:"Please enter Plan Name",
        price:"Enter a valid number"
    }

});

I want to combine them into 1 rule/function, how can I achieve this?

Thanks

Upvotes: 4

Views: 3136

Answers (1)

David Tang
David Tang

Reputation: 93674

Store the options in a variable and reuse it.

var vProduct = {
    rules: {
        name:"required",
        price:"number"
    },
    messages: {
        name:"Please enter Plan Name",
        price:"Enter a valid number"
    }
};

jQuery("#add_product").validate(vProduct);
jQuery("#edit_product").validate(vProduct);

Unfortunately you can't simply use jQuery("#add_product, #edit_product").validate({...}) because the plugin doesn't handle more than one element being selected.

Upvotes: 7

Related Questions