Вопрос по jquery, javascript – Как запретить пользователю менять страницу с помощью jQuery

8

У меня есть страница с формой, которая отправляется через ajaxSubmit () (так, без изменения страницы).

Моя цель заключается в том, чтобы, когда пользователь пытался изменить страницу (или даже закрыть браузер), я спрашивал его, действительно ли вы хотите выйти из страницы без отправки формы (точно так же, как это делает gmail).

Например, Gmail делает это с помощью всплывающего окна, похожего на window.confirm, но, если это возможно, мне бы хотелось обрабатывать его с помощью пользовательских сообщений и параметров.

У jQuery есть событие unload:

$(window).unload( function () { alert("Bye now!"); } );

но это позволяет мне просто сделать что-то перед выходом со страницы; мне нужно "заблокировать" Выход из страницы, если пользователь нажимает соответствующую кнопку.

Итак, как обработать (и отменить) событие выхода из страницы?

Ваш Ответ

2   ответа
16

Вот

<script type="text/javascript">

       function unloadPage(){
           return "dont leave me this way";
       }

       window.onbeforeunload = unloadPage;

</script>
Да это оно! Извините, я не могу настроить «оповещение», но я не думаю, что это будет большой проблемой. Strae
11

$(window).bind('beforeunload', function(e) {
    return "ATTENZIONE!!";
});

Оно работает!!

Похожие вопросы