Как убрать сообщение браузера, реагирующего на уход со страницы?

  • Автор темы Автор темы Avenus
  • Дата начала Дата начала

Avenus

Under Glory Yield
Как убрать сообщение браузера, реагирующего на уход со страницы?

Отправляю данные формы методом XMLHttpRequest по событию onClick на кнопке, т.е. без перезагрузки страницы. Но при этом после ухода с этой страницы: переход по ссылке или обновление страницы, браузер выдает сообещение:

Вы действительно хотите уйти с этой страницы?
Изменения не будут потеряны если Вы уйдете с этой страницы.
Чтобы продолжить, нажмите "Oк". Чтобы остаться на данной странице, нажмите "Отмена".


Я понимаю, что если бы на страницу передавались данные через POST, то было бы о чем предупреждать. К тому же в данном случае сообщение о том, что изменения НЕ будут потеряны.

Подскажите, пожалуйста, из-за чего может это возникать?
На что обратить внимание в javascript коде?

P.S. Извиняюсь, сразу не написал: используется tinyMCE вместе с Ajax, т.е. сохраняю данные формы через Ajax.
 
Это кто такое сообщение дает? JS или броузер? имхо JS, то есть ищи в коде это сообщение и меняй логику.
 
который? никогда такого сообщения не встречал. ты вообще в курсе confirm который выводит сообщение и 2 кнопки?

хочешь советов - дай хоть линк, а то игра в телепатов
 
dimagolov, а как ты думаешь, в курсе или нет? :)
Если я свободно пишу на javascript.
Я тоже раньше не встречал такого сообщения, а вот теперь встретил... и не пойму из-за чего оно появляется.
 
Вы действительно хотите уйти с этой страницы?
Изменения _не_ будут потеряны если Вы уйдете с этой страницы.
бред полнейший. нахрена браузеру такое писать? типа: уйдёшь не уйдешь - разницы ноль, но ты действительно хош уйти
 
Делаю стандартный запрос для XMLHttpRequest.
Отправляю через POST. В переменной poststr строка со значениями из формы. Функция processStateChange по статусу request.status==200 возвращает результат выполнения отправки формы.
PHP:
request.onreadystatechange=processStateChange;
request.open('POST',URL,true);
request.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8;");
request.setRequestHeader("Content-length",poststr.length);
request.setRequestHeader("Connection","close");
request.send(poststr);
Вот после выполнения скрипта при узоде со страницы и появляется сообщение от браузера. И в Mozilla, и в IE, и в Opera одинаково.
Если использовать метод GET, то такого не возникает. Но здесь не получится использовать этот метод.

-~{}~ 29.09.08 23:58:

berkut - я тоже, считаю, что бред... но сообщение то есть. Вот, у человека такие же проблемы:
http://www.drupal.ru/node/9249

-~{}~ 29.09.08 23:59:

Только в моем случае такое сообщение вылетает только при F5 или переходе по ссылке.
 
вроде такой диалог появляется в случае использования события onBeforeUnload (объекта window).
 
Gas, спасибо!
Порылся по документации tinyMCE... правда там не испоьзуется событие onBeforeUnload, но сделан его прототип в плагине autosave. Я его отключил и сообщение не стало выводиться. А плагин autosave они предлагают использвать как свой вариант с ajax.
 
ну вот, как обычно ТС ССЗБ. нет бы сразу посмотреть кого он цепляет к страничке и кто такой бред тулит в сообщение.
 
Сверху