2013-12-19 6 views
0

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

Еще одна проблема, с которой я столкнулся, заключается в том, что этот код работает только в EI, а не в Firefox или Chrome. Обычно это наоборот. Но, может быть, я должен опубликовать проблему с браузером как отдельный пост?

<!DOCTYPE html> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
     <title>Verify</title>  
     <script type="text/javascript"> 
      function handleRequest() { 
       if(confirm('Sure you want to quit?')) { 
       // redirect or quit; 
       } else { 
        //Do not change page or quit 
       } 
      } 
     </script> 

    <body onunload="handleRequest()"> 

     <p></p> 
     <p>Body content</p> 
    </body> 

</html> 

ответ

2

Использование onbeforeunload:

window.onbeforeunload = function(e) { 
    return 'Dialog text here.'; 
}; 

Он откроет DialogBox и попросить пользователя остаться или уйти от страницы. Это обычное поведение браузера.

+0

Как бы вы использовали это в тег? – user1960836

+0

@ user1960836 В этом нет необходимости. Просто поместите этот код в тег '

1

Вы можете только отменить его с onbeforeunload, и возвращая ложное к событию:

<body onbeforeunload="return confirm('Sure you want to quit?');"> 
+0

Итак, вы просто вернете false в инструкции else для отмены? – user1960836

+0

Ваши предложения работают как шарм. благодаря – user1960836

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