2010-11-04 47 views
2

我正在使用一個javascript確認,它將在15分鐘後反覆調用。如果用戶在確認框中選擇任何選項都不是 ,我會在等待1分鐘後重定向他。如何實現此目的?我的代碼就像Javascript超時

var timeout = 15*60000; 

    setTimeout("timeoutConfirm();",timeout); 
    function redirectToClose(){ 
     var action='Some Action'; 
     document.mainForm.action = action; 
     document.mainForm.submit(); 
    } 
    function timeoutConfirm(){ 
     if(confirm('Please click OK to continue working on this page')){ 
      setTimeout("timeoutConfirm();",timeout); 
     }else{ 
      redirectToClose(); 
     } 
    } 

回答

1

您最好創建自己的確認對話框(例如,作爲疊加層)。

這是因爲confirm會暫停頁面上的所有javascript,直到用戶單擊對話框。由於您的代碼不會執行,您將無法在等待後重定向。

+0

感謝您的答覆。關於如何創建我自己的確認對話框的任何建議? – 2010-11-04 09:59:31

+0

@ user461807 - 看看jQuery和thickbox插件。 http://jquery.com/demo/thickbox/ – Oded 2010-11-04 10:01:42

+0

非常感謝,但我可以使用JavaScript獨自實現這一點嗎? – 2010-11-04 10:05:07