@KodeKod

Обнуляем переменную при выходе из цикла?

Здравствуйте! Есть функция
var fm = $('#'+idForm).serialize();
var ValidatorCountErros;
console.log(fm);

$.ajax({
type: 'POST',
url: '/ajax/?sa.php',
data: fm,
success: function(data) {
console.log(data);
let n = JSON.parse(data);
console.log('newCount - ok');

$.each(n, function (i, item) {
if(item.message != '0') {
ValidatorCountErros++;
$("#info-"+ item.name ).html(item.message);
$("#info-"+item.name).toggleClass("invalid-feedback");
$("#inp-"+item.name).toggleClass("is-invalid");
} else {
$("#info-"+ item.name ).html('');
$('#inp-'+ item.name ).removeClass("is-invalid");
$("#inp-"+item.name ).last().addClass("is-valid");
}
});
},
error: function(xhr, str){
alert('errp ' + xhr.responseCode);
var ret = true;
}
});

if(ValidatorCountErros > 0) {
var ret = true;
} else {
var ret = false;
}
return ret;
При выходе ValidatorCountErros не возвращает количество
  • Вопрос задан
  • 300 просмотров
Решения вопроса 1
coderisimo
@coderisimo Куратор тега JavaScript
Ну-ну ))))
вы объявили переменную : var ValidatorCountErros;
затем стартуете асинхронную ф-цию : $.ajax(.....
и не дожидаясь ее завершения пытаетесь работать с переменной ValidatorCountErros , которая еще НЕ ИЗМЕНИЛАСЬ . Так как $.ajax - еще не закончился!

суть ошибки ясна? )
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@dpws
var error;
$.each(n, function (i, item) {
  error++;
});
alert(error);


Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 нояб. 2024, в 00:55
500 руб./за проект
21 нояб. 2024, в 23:30
300000 руб./за проект
21 нояб. 2024, в 22:21
3000 руб./в час