The jQuery Validation plugin works great and is very easy to use:
$(".selector").validate({
})
Just by setting CSS classes like "required email", the default message will be displayed.
However, I need to customize the messages. The documentation says you can specify rules using a key-value pair for elements and their corresponding messages:
$(".selector").validate({
rules: {
name: "required",
email: {
required: true,
email: true
}
},
messages: {
name: "Please specify your name",
email: {
required: "We need your email address to contact you",
email: "Your email address must be in the format of name@example.com"
}
}
})
But, it is not practical to specify a rule for every form element, especially server-generated controls in ASP.NET. Is it possible to specify rules that would apply to ALL elements? Or can I use a class selector somehow?
I tried the following, but it didn't work:
$("#frmMyForm").validate
({
rules:
{
$(".required email"):
{
required: true,
email: true
}
},
messages:
{
$(".required email"):
{
required: "Please enter your email address",
email: "Your email address must be in the format of name@example.com"
}
}
});
That seemed to have a syntax error - the plugin didn't do anything. Then I tried:
$("#frmMyForm").validate
({
rules:
{
".required email":
{
required: true,
email: true
}
},
messages:
{
".required email":
{
required: "Please enter your email address",
email: "Your email address must be in the format of name@example.com"
}
}
});
This didn't have any syntax error - the plugin worked, but it ignored the rules/custom messages. Has anyone here used jQuery Validation plugin? If so, how did you apply rules/custom messages to multiple elements?