javascript自动提交结果循环

问题描述 投票:1回答:1

一个php页面(让我们称之为page_one)检查DB上的某些值,并根据这些值在屏幕上回显不同的问题。用户设置一些无线电并单击提交。代码将无线电值发送到另一个php文件(让我们称之为page_two),然后将它们写入数据库,然后代码将新值放入隐藏表单的隐藏字段中,并提交它们再次加载page_one,其中显示新问题。等等,直到问题集的数量完成。

要自动提交到page_one,我在php文件page_two中使用以下javascript。

<script>
var auto_refresh = setInterval(function() { submitform(); }, 50);

function submitform()
{
    /*alert('test');*/
    document.getElementById("hidden-form").submit();
}
</script>

在Firefox(Mac)和Safari(Mac)以及iOS(Safari)上,一切顺利:page_two在数据库中写入值并回调page_one。

Chrome没有做同样的事情,而是进入一个循环,并且每隔50毫秒继续调用page_two几千次,直到出现故障为止。

有帮助吗?

javascript page-refresh
1个回答
3
投票

这就是为什么setInterval制作..它将每50分钟运行一次并提交表格..如果你需要它一次调用它然后使用setTimeout

setInterval()方法以指定的时间间隔(以毫秒为单位)调用函数或计算表达式。 setInterval()方法将继续调用该函数,直到调用clearInterval()或关闭窗口。

参考:setInterval

setTimeout()方法在指定的毫秒数后调用函数或计算表达式。

参考:setTimeout

© www.soinside.com 2019 - 2024. All rights reserved.