Как я могу сделать запрос ajax после получения сообщения? - PullRequest
0 голосов
/ 26 февраля 2019

У меня есть сообщение о получении, и после того, как я хочу сделать ajax-запрос:

$(document).on('change', '.item-select', function() {
     fetch(`/row/${entity}/${relation}/${optionValue}`,{
        method: 'POST'
     })
    $.ajax({
        url:'{{ path('select', { 'slug': page.slug, 'id': id, 'parent': parent   }) }}',
        success : function (data) {
          $(".output").html(data.output);
        }
      });
});

Проблема в том, что это, похоже, не работает должным образом.Можно ли попросить ajax-запрос убедиться, что он не запускается до того, как будет завершено получение сообщения?

1 Ответ

0 голосов
/ 26 февраля 2019

Поместите его в обратный вызов .then() для обещания, возвращаемого fetch():

fetch(`/row/${entity}/${relation}/${optionValue}`,{
    method: 'POST'
}).then(function () {
    $.ajax({
      //...
    });
});

Fetch - это асинхронная AJAX-операция, аналогичная $.ajax() в jQuery, последующие операции будут выполняться вобратные вызовы обещания.(Хотя очень странно, что вы используете оба, обычно можно использовать jQuery или не использовать jQuery. Но это не имеет значения для проблемы, я полагаю.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...