[jQuery] [validate] opera shows no errormessage
Hi Jörn,
I´m a jquery-beginner and try to build my first form with your
validation-plugin.
I appreciate your great work!
Everything works fine, only opera in version 9.51 shows a strange
behaviour:
I validate the fields onblur and show a ok-image onsuccess.
When i leave a invalid email-inputfield, opera don´t show the
errormessage.
The inputfield itself has the errorclass - i can see this because there
´s a red border from my css.
But the errormessage don´t appear.
When I click submit, or I leave any other inputfield with a valid
value, the errormessage for the emailfield appears.
Here is my code:
$(document).ready( function() {
/* check the formfields */
$.validator.setDefaults({
success: function(label) {
// set as text for IE
label.html(" ").addClass("valid");
}
});
$('#regForm').validate({
rules: {
vorname: {
required: true,
maxlength: 100
},
name: {
required: true,
maxlength: 150
},
email: {
required: true,
maxlength: 150,
email: true
},
emailcopy: {
required: true,
equalTo: "#email"
},
username: {
required: true,
maxlength: 30
},
password: {
required: true,
maxlength: 40
},
passwordcopy: {
required: true,
maxlength: 40,
equalTo: "#password"
}
},
messages: {
vorname: {
required: "Bitte geben Sie Ihren Vornamen ein.",
maxlength: "Der Vorname darf höchstens 100 Zeichen lang sein."
},
name: {
required: "Bitte geben Sie Ihren Namen ein.",
maxlength: "Der Name darf höchstens 150 Zeichen lang sein."
},
email: {
required: "Bitte geben Sie Ihre E-Mailadresse ein.",
maxlength: "Die E-Mailadresse darf höchstens 150 Zeichen lang
sein.",
email: "Bitte geben Sie Ihre E-Mailadresse im Format
name@domain.de ein."
},
emailcopy: {
required: "Bitte wiederholen Sie die Eingabe Ihrer E-
Mailadresse.",
equalTo: "Die beiden E-Mailadressen stimmen nicht überein."
},
username: {
required: "Bitte geben Sie Ihren Benutzernamen ein.",
maxlength: "Der Benutzername darf höchstens 30 Zeichen lang sein."
},
password: {
required: "Bitte geben Sie ein Passwort ein.",
maxlength: "Das Passwort darf höchstens 40 Zeichen lang sein."
},
passwordcopy: {
required: "Bitte wiederholen Sie das Passwort.",
maxlength: "Das Passwort darf höchstens 40 Zeichen lang sein.",
equalTo: "Die beiden Passwörter stimmen nicht überein."
}
}
});
});
Is this a bug, or my mistake?
There is a second question I have:
When there is the attribute 'maxlength' in the html of the inputfield
I want to validate,
the rule 'maxlength' seems no longer be working.
(I tried this with a maxlength of 10 in the rule and maxlength of 20
in the html attribute.)
Is this a bug or is the rule overriden by the html attribute?
Can you help me?
Klaus Dietheuer