【问题标题】:Javascript timeoutJavascript 超时
【发布时间】:2023-03-22 14:45:01
【问题描述】:

我正在使用一个 javascript 确认,它将在 15 分钟后重复调用。如果用户在确认框中没有选择任何选项 我会在等待 1 分钟后重定向他。如何实现这一点?我的代码就像

    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();
        }
    }

【问题讨论】:

    标签: javascript


    【解决方案1】:

    您最好创建自己的确认对话框(例如,作为叠加层)。

    这是因为confirm 将停止页面上的所有javascript,直到用户单击对话框。等待后您将无法重定向,因为您的代码不会执行。

    【讨论】:

    • 感谢您的回复。关于如何创建自己的确认对话框有什么建议吗?
    • @user461807 - 看看 jQuery 和thickbox 插件。 jquery.com/demo/thickbox
    • 非常感谢,但我可以单独使用 javascript 来实现吗?
    • @user461807 - jQuery 及其插件 javascript。您可以花费大量时间复制他们所做的事情(在 js 中生成一个 100% 高度和宽度的 div,将其附加到页面等...)。为什么需要重新发明轮子?
    • 因为我正在为旧应用程序执行此操作。如果我使用 jQuery,我只需要为此目的添加插件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多