首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用持续循环中的javascript自动提交表单

使用持续循环中的javascript自动提交表单
EN

Stack Overflow用户
提问于 2014-05-29 10:12:10
回答 2查看 722关注 0票数 0

我只是想知道这段代码哪里出了问题--它将in 95添加到结帐中,但问题是,它反复执行,就像循环中的那样,我似乎无法理解如何阻止它。

代码语言:javascript
复制
<body onLoad="submit1()">
<form method="post" action="" class="jcart" id="foo">
 <fieldset>
<input type="hidden" name="jcartToken" value="<?php echo $_SESSION['jcartToken'];?>" />
<input type="hidden" name="my-item-id" value="ABC-8" />
<input type="hidden" name="my-item-name" value="Level 1" />
<input type="hidden" name="my-item-price" value="95.00" />
<input type="hidden" name="my-item-url" value="" />

<table>
      <tr>
      <td width="65%">
    <strong>Level 1 all for £95</strong>
      </td>

      <td width="15%" align="right">
    £95.00
      </td>

  <td>
        <input type="text" hidden ="true" name="my-item-qty" value="1" size="3" hidden="true" />
  </td>
      <td width="20%" align="center">
    <input type="submit" name="my-add-button" id="my-add-button" value="add" class="button" /> 
  </td>
  </tr>
     </table>       
</fieldset>
  </form>

<script type="text/javascript">
function submit1() {    
    // It seems that its this causing the problem 
    document.getElementById("my-add-button").click()// Simulates button click

    document.foo.submit() // Submits the form without the button
} 
</script>
</body>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-05-29 10:16:19

因为在body onload中调用submit1(),所以每次加载页面时都会执行它。由于此函数提交再次加载页面的表单,因此它创建了一个循环。删除submit1()函数并尝试这种更简单的方法:

代码语言:javascript
复制
$("#my-add-button").click(function() {
    $("#foo").submit();
});
票数 0
EN

Stack Overflow用户

发布于 2014-05-29 10:19:23

试试这个:

代码语言:javascript
复制
var o = 0;
function submit1() {
    if(o === 0){
      document.foo.submit() // Submits the form without the button
    }
    (o === 0) ? o++ : o = 0;
} 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23930883

复制
相关文章

相似问题

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