为什么我的代码在使用javascript interval和clearInterval时仍然循环提交表单?
为什么我的代码仍然循环提交表单为什么我的代码在使用javascript interval和clearInterval时仍然循环提交表单?,javascript,php,Javascript,Php,为什么我的代码仍然循环提交表单 <?PHP session_start(); include("connect.php"); ?> <form class="form" id="fid" method="post" action="" ENCTYPE = "multipart/form-data"> <input type="text" id="support" name="support" value="555"> </form> <sc
<?PHP
session_start();
include("connect.php");
?>
<form class="form" id="fid" method="post" action="" ENCTYPE = "multipart/form-data">
<input type="text" id="support" name="support" value="555">
</form>
<script>
var timer_var = null;
timer_var = window.setInterval(function (){
document.getElementById("fid").submit();
window.clearInterval(timer_var);
}, 1000);
</script>
<?PHP
if(isset($_POST["support"]))
{
?>
<script>
alert("test");
</script>
<?PHP
}
?>
当加载页面延迟1秒,然后同时通过javascript提交表单时clearInterval
,所以我想知道为什么我的代码仍然循环提交表单
<?PHP
session_start();
include("connect.php");
?>
<form class="form" id="fid" method="post" action="" ENCTYPE = "multipart/form-data">
<input type="text" id="support" name="support" value="555">
</form>
<script>
var timer_var = null;
timer_var = window.setInterval(function (){
document.getElementById("fid").submit();
window.clearInterval(timer_var);
}, 1000);
</script>
<?PHP
if(isset($_POST["support"]))
{
?>
<script>
alert("test");
</script>
<?PHP
}
?>
var定时器_var=null;
timer\u var=window.setInterval(函数(){
document.getElementById(“fid”).submit();
窗口清除间隔(计时器变量);
}, 1000);
警报(“测试”);
就个人而言,如果任务只需执行一次,我会使用setTimeout
让我给你解释一下这个问题。当页面加载时,您尝试执行一些代码。在此代码中,您提交的表单将重新加载页面。这恰好导致无限循环
如果希望在不重新加载页面的情况下提交数据,可以发出ajax请求,在该请求中发送在输入字段中输入的数据
在这里你可以找到一个非常清楚的解释:
为什么要使用
setInterval
?为什么不setTimeout
?仍然循环提交表单sir。