Я использую событие click, чтобы захватить некоторые данные, запросить удаленный сервер и затем отобразить результаты.Jquery Delay alert до тех пор, пока .ajax не вернул
Проблема заключается в представлении предупреждения о результатах, до завершения запроса .ajax. Любой способ отложить оповещение до тех пор, пока результаты не будут доступны?
Это то, что я до сих пор ..
$(".img").click(function(e){
e.preventDefault();
var data = $(this).attr("data")
var info = data.split(',');
var query = '';
$.ajax({ url : 'http://DOMAIN/' + info[5],
success: function(response) {
console.log (response);
query= response;
}
});
alert(info[0] + ' ' + info[1] + ' ' + query);
});
Благодаря
Вы могли бы попытаться использовать события $ .ajax, такие как beforeSend: function() {} или complete: function() {} –
@ Frédé ric Hamidi, хотя этот вопрос имеет тот же самый ответ, что и ваш «дубликат», это совершенно другой вопрос ... это не спрашивает, как вернуть ответ, он спрашивает, как можно отложить изменение до тех пор, пока это не произойдет. – patrick
@patrick, если вопрос имеет * точный ответ * как другой, то это дубликат. В этом конкретном случае он запрашивает, как отложить оповещение * до тех пор, пока запрос AJAX не будет завершен *, который является точно точкой, адресованной дубликатом ('query' должен быть назначен перед вызовом' alert() '). –