Показ сообщения если пользователь покидает страницу

M
На сайте с 03.06.2012
Offline
73
741

Здравствуйте, мне нужно реализовать следующее: если пользователь покидает страницу нужно послать ajax запрос и от его результата вывести сообщение пользователю или нет. Само сообщение можно выводить кодом

window.onbeforeunload = function (){ 

if(confirm('Ваш заказ сделан неверно проверте еще раз все поля')){
return true;
} else {
return false;
}
}

но если сюда впихнуть ajax, у меня получилось так:


window.onbeforeunload = function (){
jQuery('.loading').show();
jQuery.get(url, {},
function(data) {
var htm = data;
if (control == 'false') {
if(confirm('Ваш заказ сделан неверно проверте еще раз все поля')){
return true;
} else {
return false;
}

}
else
{

}
jQuery('.loading').hide();
});
}

то при нажатии на любую ссылку идет запрос, но тутже прерывается и браузер переходит на другую страницу. Подскажите как можно решить этот вопрос, спасибо!

IL
На сайте с 20.04.2007
Offline
435
#1

ajax - асинхронный. Т.е. выполнение скрипта продолжается без ожидания ответа. Для синхронного запроса следует указать параметр async false;

http://stackoverflow.com/questions/133310/how-can-i-get-jquery-to-perform-a-synchronous-rather-than-asynchronous-ajax-re

... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
M
На сайте с 03.06.2012
Offline
73
#2
ivan-lev:
ajax - асинхронный. Т.е. выполнение скрипта продолжается без ожидания ответа. Для синхронного запроса следует указать параметр async false;

http://stackoverflow.com/questions/133310/how-can-i-get-jquery-to-perform-a-synchronous-rather-than-asynchronous-ajax-re

Спасибо все получилось!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий