У меня есть форма, которая проверяется после того, как пользователь «размывает» из поля ввода. Итак:Функция обратного вызова после эффекта размытия запускается в jQuery
$("#field1").blur(function() {
if($(this).val().length>0) {
$(this).attr('class', 'completed');
}
});
Когда пользователь впервые посещает форму, и до тех пор, все поля не будут «завершены», кнопка отправить скрыт:
$(".submit").hide();
Я хочу кнопку представить slideDown сразу все # field1, # field2 ... элементам присваивается «завершенный» класс (любой другой предложенный метод также будет работать).
Я попытался с помощью:
$("#field1").blur(function() {
if($(".completed").length == $("input[type='text']").length) {
$(".submit").slideDown(1000);
}
});
Но это не сработало, как его называли одновременно с предыдущим «размытость» обработчика.
Есть ли способ связать обработчик события с после того, как другой активирован? Может быть, способ добавить функцию обратного вызова для «размытия», которая работает?
Я буду благодарен за все типы решений (не обязательно что-то вроде того, что я представил).
это не работает, потому что оба addClass и если утверждение, похоже, происходит одновременно, поэтому к тому моменту, когда оно выполняется, последнему полю ввода не присвоен «завершенный» класс. – Gal
Ahh конечно - я добавил функцию setTimeout, которая будет запускать 100 мс после оператора if, попробуйте и посмотрите, поможет ли она. – Marko