javascript - setTimeout() 目标函数永远不会触发

标签 javascript

function redirectHome() {
    alert("here1");
    function setHref() {
        alert("here2");
            window.parent.location.href="fprIndex.html?action=edit&aspect=<%=request("aspect")%>&id=<%=request("Request_ID")%>";
    };

    document.forms["form1"].submit();
    var timer = setTimeout( setHref, 1000 );
}

redirectHome() 通过按钮的“onClick()”事件调用。

看到第一个警报“here1”,但从未看到“here2”。

怎么了?

如果我只是:

function redirectHome() {
    document.forms["form1"].submit();   
    window.parent.location.href="fprIndex.html?action=edit&aspect=<%=request("aspect")%>&id=<%=request("Request_ID")%>";
}

我要做的是从提交表单到重定向发生的时间延迟 1 秒 - 纯粹出于美学原因。

最佳答案

问题很可能是 submit() 调用导致向服务器发送完整消息,这类似于页面刷新,意味着未触发以下 javascript。

关于javascript - setTimeout() 目标函数永远不会触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32916159/

相关文章:

javascript - Firefox Add-on SDK 仅在重启时重新加载扩展

javascript - 仅当ajax响应时间超过X毫秒时,如何调用 "Please Wait"窗口?

javascript - everyauth with express (boilerplate) 应用程序

javascript - 重置子元素的不透明度 - Maple Browser (Samsung TV App)

javascript - 尝试在 REACT 页面上呈现数据库中的数据

javascript - 为什么缩小或混淆的JavaScript比未压缩的代码性能更差?

javascript - 如何在html中的按钮标签内给出一个href

javascript - array.find 返回的对象的解构

javascript - 将对象转换为 typescript 中的模型

JavaScript 错误消息 TypeError : undefined is not a function while using ngTagsInput