Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > JavaScript: Общие вопросы > OnUnload, валидация формы, остановка перехода |
Автор: Rivelt_Silverbeast 7.3.2008, 15:13 | ||
Имеется следующий код:
Также на странице есть набор однотипных форм, имеющих textarea. При наличии хотя бы одного заполненного (и не отправленного) textarea хотелось бы предупреждать пользователя перед уходом по ссылке или перезагрузке страницы. Проблема в том, что пока выполняемый код действует издевательски: проверки выполняются, confirm вызывается, пользователь уведомлён о наличии полей ввода с текстом, но браузер бодро уходит. Что здесь можно сделать? |
Автор: ksnk 7.3.2008, 15:45 |
потомучто метод называется onbeforeunload и работать с ним нужно несколько по другому... |
Автор: Kefir 7.3.2008, 16:12 | ||
Добавлено через 1 минуту и 56 секунд смысл такой, что будет показано окошечко самого браузера, где будет текст о том, что ты, мол уходишь со страницы, а также будет вписан текст который ты вернёшь в onbeforeunload (в моём примере - 'Уже уходите?'). |
Автор: Rivelt_Silverbeast 7.3.2008, 16:23 | ||
О, спасибо. Примерно то, что искал. В итоге получаем:
|
Автор: Rivelt_Silverbeast 7.3.2008, 16:39 |
P.S. Валидатор ругается на атрибут onbeforeunload, как ни странно. |
Автор: Kefir 7.3.2008, 16:52 |
дело в том, что оно не входит в стандарт ![]() ![]() Добавлено через 14 минут и 9 секунд ан нет, вру - даже гмейл не смог сделать эту тему в опере В) |
Автор: Rivelt_Silverbeast 7.3.2008, 17:54 | ||
Поэтому единственный известный мне способ скормить валидатору страничку с этим решением — перевести полностью в javascript. ![]()
Но это не совсем честно, imho. ![]() |
Автор: Kefir 8.3.2008, 01:39 |
Rivelt_Silverbeast, ну, насколько я помню, аякс тоже изначально не был валидным, его в стандарт ввели задним числом, когда он уже какое-то время просуществовал. а onbeforeupload по любому рано или поздно в стандарт войдёт. вопрос времени В) |