LiveValidation - Фокус
Я использую LiveValidation, и мне просто интересно, удалось ли кому-нибудь установить фокус неудачной формы ввода, готовой для повторного ввода...
Я посмотрел на документацию, но ничего не вижу.
Благодарю.
2 ответа
Это не вариант проверки в реальном времени, но я получил решение, подобное этому:
$(document).ready(function(){
// Focus first erroneous input
$("form").on("submit", function(){
var $self = $(this);
setTimeout(function() {
var $fields = $self.find(".LV_invalid_field");
if ($fields.size() > 0) {
$fields.get(0).focus();
}
});
});
});
Мне удалось сделать это..
Я только что изменил функцию addFieldClass следующим образом:
addFieldClass: function(){
this.removeFieldClass();
if(!this.validationFailed){
if(this.displayMessageWhenEmpty || this.element.value != ''){
if(this.element.className.indexOf(this.validFieldClass) == -1) this.element.className += ' ' + this.validFieldClass;
}
}else{
if(this.element.className.indexOf(this.invalidFieldClass) == -1) this.element.className += ' ' + this.invalidFieldClass;
//Set Focus On In-Valid Elements
var id = this.element.id;
document.getElementById(id).focus();
}
},