2010-11-04 38 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