Ajax во время окна JavaScript.beforeunload: возвращая ошибку - PullRequest
1 голос
/ 23 сентября 2011

Мне нужно выполнить ajax-запрос на отправку некоторых данных на стороне сервера каждый раз, когда пользователь решает покинуть страницу.Однако я не хочу мешать им уходить: я не хочу, чтобы всплывающие сообщения появлялись.В настоящее время мой код таков:

window.onbeforeunload=function(){
   unloadAjax();
}

Это не работает и вызывает мгновенное сообщение об ошибке ajax.Однако, если я добавлю оператор return false; внутри функции onbeforeunload, ajax будет работать нормально.Как мне решить эту проблему?

1 Ответ

2 голосов
/ 23 сентября 2011

Когда вы добавляете return false, появляется диалоговое окно подтверждения, откладывающее выгрузку страницы.Тем временем запрос AJAX завершается.Если оператор return не включен, страница немедленно выгружается, прерывая все активные соединения (и прерывая ваш запрос AJAX).

...