Я хочу сделать AJAX-запрос "в фоновом режиме" моей функции JavasSript, но мой скрипт ожидает завершения запроса AJAX, прежде чем он продолжит выполнять мой код.что анимация slideDown ожидает выполнения, пока запрос не вернет ответ.Как заставить анимацию выполняться одновременно с запросом ajax?
slideDown
Ваш код уже должен выполнять запрос Ajax "в фоновом режиме" (асинхронно).Метод jQuery.get() является сокращением для:
jQuery.get()
$.ajax({ url: url, data: data, success: success, dataType: dataType });
А метод jQuery.ajax() по умолчанию async: true.
jQuery.ajax()
async: true
Поместите slideDown() в успешный обратный вызов
slideDown()
$('div').hide(); $.get('/controller/action', { id: 'abc123' }, function(data){ alert("Request completed"); //now update the div with the new data $('div').slideDown('slow'); } );
Если вы не предоставляете конфигурацию по умолчанию для AJAX с async: false ( doc ).
async: false
возможно ли, что div не содержит ничего, пока запрос ajax завершен, и, следовательно, создает иллюзию, что его ждет?
вы пробовали старую добрую отладку alert () после запроса ajax?