Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript setTimeout-有没有正确的方法来实现它?_Javascript - Fatal编程技术网

Javascript setTimeout-有没有正确的方法来实现它?

Javascript setTimeout-有没有正确的方法来实现它?,javascript,Javascript,这是我在.aspx文件中的一段代码 <script> setTimeout(redirect(), 35000); function redirect() { window.location.href = "ReportCard.aspx?TestTransID=<%=testtransid %>"; } </script> setTimeout(重定向(),35000); 函数重定向() { window.location.href=“R

这是我在.aspx文件中的一段代码

<script>
 setTimeout(redirect(), 35000);
 function redirect()
 {
    window.location.href = "ReportCard.aspx?TestTransID=<%=testtransid %>";
 }
</script>

setTimeout(重定向(),35000);
函数重定向()
{
window.location.href=“ReportCard.aspx?TestTransID=”;
}
我希望settimeout在35秒后执行重定向功能,但一旦加载此页面,它就会立即重定向页面。它不会等待35秒


我遗漏了什么吗?

发生这种情况是因为您正在使用
()
调用函数。您需要将其包装成如下函数:

setTimeout(function() {
  redirect()
}, 35000);
setTimeout(redirect, 35000);
或者,只需将引用分配给函数,如:

setTimeout(function() {
  redirect()
}, 35000);
setTimeout(redirect, 35000);

setTimeout(重定向,35000)您遗漏的是,在setTimeout中的函数名之后添加()会导致立即调用该函数。杰瑞德有上面的正确答案。谢谢。成功了。