2012-04-24 3 views
1

У меня есть страница aspx. На странице у меня есть функция javascriptAJAX и событие onbeforeunload

window.onbeforeunload = confirmExit; 
function confirmExit() 
{ 
return "You have attempted to leave this page. If you have made any changes to the fields  without clicking the Submit button, your changes will be lost. Are you sure you want to exit this page?"; 

} 

Это выполняется, когда пользователь покидает страницу. Однако он также выполняется на обратной стороне страницы. Как проверить, является ли это частичной обратной почтой и игнорирует ее?

ответ

0

Can I prevent window.onbeforeunload from being called when doing an AJAX call

Смотрите, если действие вы делаете делает любое из следующих действий:

onbeforeunload event

Чтобы вызвать это событие, выполните одно из следующих действий:

  • Закрыть текущее окно.
  • Перейдите в другое место, введя новый адрес или выбрав «Избранное».
  • Щелкните якорь, который ссылается на другой документ.
  • Вызов метода anchor.click.
  • Вызвать метод document.write.
  • Вызовите метод document.close.
  • Вызвать метод window.close.
  • Вызвать метод window.navigate или NavigateAndFind.
  • Вызвать метод location.replace.
  • Вызвать метод location.reload.
  • Укажите новое значение для свойства location.href.
  • Отправить форму по адресу, указанному в атрибут ACTION, с помощью элемента INPUT type = submit или вызвать метод формы form.submit.
  • Вызвать метод window.open, предоставляя возможное значение _self для имени окна.
  • Вызовите метод document.open.
  • Нажмите кнопку «Назад», «Вперед», «Обновить» или «Домой».
+0

Позвольте привести пример. В aspx-форме у меня есть элемент управления . Когда я выбираю опцию из этого элемента управления, есть частичная запись назад, и моя функция confirmExit() выполняется. Как я могу сказать, что это выпадающий список, а не фактическая навигация от страницы? – user1247395

Смежные вопросы