2010-01-25 3 views
2

Я хочу вывести сообщение с запросом подтверждения, если пользователь хочет покинуть текущую страницу, точно так же, как stackoverflow делает это, когда вы вводите вопрос.Как спросить подтверждение при закрытии окна?

Может ли кто-нибудь помочь мне в этом, предоставив мне сценарий или перенаправив меня на ответ (на этом сайте или в другом месте)?

Благодаря

+0

Было бы inpolite предложить вам просто посмотреть на источник для stackoverflow? –

+0

Не грубить, но на самом деле вы на самом деле искали ответ? –

ответ

2

Вы должны обрабатывать onbeforeunload событие окна и возвращает сообщение с подтверждением в виде строки.

onunloadне работа здесь. Demo

8

Вы можете использовать onbeforeunload событие.

window.onbeforeunload = function() { 
    return 'Are you sure that you want to leave this page?'; 
}; 
+0

Или попробуйте декларативный синтаксис: http://stackoverflow.com/questions/2132760/how-to-ask-confirmation-when-closing-a-window/2132790#2132790 – Ropstah

+0

Это не сработает. http://jsbin.com/obizu3 – SLaks

+1

Вам нужно вернуть строку, а не вызвать 'confirm'. – SLaks

-1

Не работает ли это?

<body onunload="return confirm('really quit?');"> 

Также для фреймовой кстати ...

+0

Это не сработает. http://jsbin.com/obizu3 – SLaks

1

window.onbeforeunload Кажется, работает для IE, но что-то вроде

window.onunload = function() 
{ 
    if (confirm('Save changes?')) 
     document.forms['form1'].submit(); 
}; 

Кажется, работает для всех браузеров.

0

Вам нужно будет сохранить все значения ваших полей в некоторых переменных & проверять их при каждом изменении URL-адреса страницы или кликов по какой-либо ссылке, чтобы уловить событие разгрузки страницы с использованием страницы.

Страница разгрузки события link/sample http://help.dottoro.com/ljflhicd.php.

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