如何每 10 秒提交一次表单



找不到正确的语法。如何每10秒提交一次表单(或模仿点击提交按钮)?页面不会重新加载,所以我需要一个循环。

<script>
 setInterval("$('form').submit()",10000);
</script>

如果您要提交自己的页面,则无需进行真正的表单发布,因为它会重新加载页面。对 Ajax 调用使用间隔。

但是,听起来您正在重新发布其他人的页面。

为了进行演示,目标页面可能如下所示:

<form method="POST">
  <input name="name" value="123">
  <input type="submit">
</form>

发布表单时,以下字段将发送到服务器。您在这里所做的是用您自己的页面模拟该页面,但有一个转折:

<form id="form" method="POST">
  <input name="name" value="123">
  <input type="submit">
</form>
<script>
  document.getElementById('form').submit();
</script>

称上面的页面海报.htm。现在将其动态嵌入到 iframe 中:

<iframe id="autopost"></iframe>
<script>
setInterval(function(){
  if (!document.version) document.version=1;
  document.version++;
  document.getElementById('autopost').src='poster.htm?v='+document.version;
},10000);
</script>

版本号用于防止缓存。

您需要

使用 setTimeout()$.ajax() 调用来执行提交本身。

如果提交返回到同一表单,则可以避免$.ajax()调用。

最新更新