Jquery Mobile Validation - позиция ошибки и выбирает
Я добавил bassistance jQuery валидацию в форму в моем проекте jQuery Mobile. Он отлично работает, за исключением ошибок, которые отображаются внутри текстовых входов, а не под ними. Я знаю, что могу использовать errorPlacement, чтобы использовать div ниже моих входов для вывода сообщений об ошибках, но это не такКажется, не работает для некоторых меню.
Итак, у меня есть 2 вопроса:
Есть ли что-то, что я могу сделать по-другому, чтобы сообщения об ошибках отображались под входами без использования errorPlacement?Как я могу получить сообщения об ошибках, которые будут отображаться в некоторых меню, если мне придется использовать errorPlacement?Вот мой код:
$('#page').bind('pageinit', function(event) {
$('#registrationForm').validate({
rules: {
firstname: {
required: true
},
lastname: {
required: true
},
email: {
required: true,
email: true,
remote: "duplicateCheck.php"
},
password: {
required: true,
minlength: 5
},
verify_password: {
required: true,
minlength: 5,
equalTo: "#password"
},
handicap: {
required: true,
maxlength: 2,
digits: true
},
stopper: {
required: true
}
},
messages: {
firstname: {
required: "Please enter your first name."
},
lastname: {
required: "Please enter your last name."
},
email: {
required: "Please enter your email.",
email: "Please enter a valid email.",
},
password: {
required: "Please enter a password.",
minlength: "You password must be at least 5 characters long."
},
verify_password: {
required: "Please enter a password.",
minlength: "You password must be at least 5 characters long.",
equalTo: "You passwords did not match."
},
handicap: {
required: "Please enter your handicap.",
maxlength: "Your max handicap can't be higher than 99.",
digits: "Please only enter numbers."
},
stopper: {
required: "Please enter the word above."
}
},
errorPlacement: function(error, element) {
error.appendTo( element.parent().next() );
}
});
});
И вот моя ошибка CSS:
label.error {
color: red;
font-size: 16px;
font-weight: normal;
line-height: 1.4;
margin-top: 0.5em;
width: 100%;
float: none;
}
@media screen and (orientation: portrait){
label.error {
margin-left: 0;
display: block;
}
}
@media screen and (orientation: landscape){
label.error {
display: inline-block;
margin-left: 22%;
}
}