找不到正确的语法。如何每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()
调用。