setTimeOut函数未按预期工作

时间:2014-10-13 05:28:32

标签: javascript

我很难使用setTimeOut功能。让我先显示代码。

这是我的代码: -

function submitform(loginUrl, username, password) {
    try {
        loc = new String(window.location);
        document.forms.frm_login.action = junctionUrl;
        document.forms.frm_login.username.value = username;
        document.forms.frm_login.password.value = password;
        document.forms.frm_login.submit();
        setTimeout(gotoHomePage,4000);
    }
    catch (e) {
    alert(e.message +"submit form");
    }

}

    function gotoHomePage()
    {
      alert("test");
      var url = "test.aspx";
      window.location=url;
    }

但是这里gotoHomePage函数在指定之后根本没有被触发 4秒

我在这里做错了什么。请建议。

任何帮助将不胜感激。

由于

1 个答案:

答案 0 :(得分:0)

表单提交正在重定向到当前页面的结果页面unload。所以,计时器不会打勾。

使用ajax或将表单的目标设置为iframe。这样,当前页面不会卸载,因此计时器会执行超时功能。

<form target="form_output">
    <!-- other inputs -->
</form>

<iframe name="form_output"></iframe>