首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用JavaScript自动提交表单

使用JavaScript自动提交表单
EN

Stack Overflow用户
提问于 2012-09-12 02:57:53
回答 5查看 196.1K关注 0票数 25
代码语言:javascript
复制
<form name="myForm" id="myForm" action="test.php" method="POST">
  <p>
  <input name="test" value="test" />
  </p>
  <p>
    <input type="submit" name="submit" value="Submit" />
  </p>
</form>

    <script>

    var auto_refresh = setInterval(
    function()
    {
    submitform();
    }, 10000);

    function submitform()
    {
      alert('test');
      document.myForm.submit();
    }
    </script>

一旦登录到页面上,我在尝试每10秒自动提交一次表单时就遇到了问题。表单名称为myForm action="test.php"。我收到'test'消息,但是页面没有提交表单。

除了在页面加载时自动加载函数之外,还有什么解决方案吗?

修复:从提交按钮中移除了(name="submit"),并且工作顺利。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-09-12 03:05:14

你需要指定一个框架,一个目标,否则你的脚本将在第一次提交时消失!

使用document.forms["myForm"]更改document.myForm

代码语言:javascript
复制
<form name="myForm" id="myForm" target="_myFrame" action="test.php" method="POST">
    <p>
        <input name="test" value="test" />
    </p>
    <p>
        <input type="submit" value="Submit" />
    </p>
</form>

<script type="text/javascript">
    window.onload=function(){
        var auto = setTimeout(function(){ autoRefresh(); }, 100);

        function submitform(){
          alert('test');
          document.forms["myForm"].submit();
        }

        function autoRefresh(){
           clearTimeout(auto);
           auto = setTimeout(function(){ submitform(); autoRefresh(); }, 10000);
        }
    }
</script>
票数 25
EN

Stack Overflow用户

发布于 2012-09-12 03:11:21

尝试使用document.getElementById("myForm")而不是document.myForm。

代码语言:javascript
复制
<script>
var auto_refresh = setInterval(function() { submitform(); }, 10000);

function submitform()
{
  alert('test');
  document.getElementById("myForm").submit();
}
</script>
票数 11
EN

Stack Overflow用户

发布于 2015-10-08 18:51:49

延迟自动提交的一种简单解决方案

代码语言:javascript
复制
<body onload="setTimeout(function() { document.frm1.submit() }, 5000)">
   <form action="https://www.google.com" name="frm1">
      <input type="hidden" name="q" value="Hello world" />
   </form>
</body>
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12376173

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档