Как сделать ajax синхронный вызов из окна Chrome window.onunload? - PullRequest
3 голосов
/ 06 сентября 2011

Я пытаюсь сделать синхронный вызов jquery .ajax для window.onunload. FF и IE работает, но не на Chrome. Я провел некоторое тестирование, и Chrome, похоже, закрывает окно и не ждет ответа.

Вот мой код:

window.onunload = function() {
    $.ajax({
        url: "/someurl",
        async: false,
        data: ({ somedata: "test" }),
        success: function(){ return true; },
        error: function(){ alert('got some error'); }
    });
}

Обратите внимание, что я использую window.onbeforeunload для отображения предупреждающего сообщения, а затем запускаю window.unload, когда пользователь покидает страницу.

1 Ответ

1 голос
/ 06 сентября 2011

Используйте onbeforeunload вместо onunload, и это должно сработать. Вам нужно заключить оба ваших события в одно действие. onunload не будет срабатывать в Chrome.

...