【问题标题】:onclick="myform.submit()" doesn't work; says method doesn't existonclick="myform.submit()" 不起作用;说方法不存在
【发布时间】:2011-11-17 08:12:01
【问题描述】:

我正在尝试通过单击链接来触发表单提交,并以此为指导:

<form name="badger" action="http://www.quietdean.com">
</form>

<a href="#" onclick="badger.submit()">submit</a>

我有

<form name="epb" method="post" action="entry.php">
//I'm using CSS to make the link look like a button without being ugly like a button
<a class="edit_button" href="#" onclick="epb.submit()">Edit</a>
<input type="hidden" name="pid" value="<?php echo $contents[0] ?> ">
<input type="hidden" name="descrip" value="<?php echo urlencode(htmlspecialchars($contents[1], ENT_QUOTES)) ?>">
</form>

所有的 html 都是由 php 正确生成的(我在多个浏览器中运行过),包括隐藏输入的值,但是当我点击我的链接时,我收到以下错误:

Uncaught TypeError: Object #<HTMLCollection> has no method 'submit' 

谁能帮我弄清楚这里出了什么问题?

我也尝试将链接放在表单之外,但这并不能解决问题。

我也试过去掉&lt;a&gt;的class属性,但还是出现同样的错误。

我现在也尝试了document.forms['epb'].submit(),但无济于事。

【问题讨论】:

    标签: html forms onclick submit


    【解决方案1】:

    此行需要关闭:

    <input type="hidden" name="descrip" value="<?php echo urlencode(htmlspecialchars($contents[1], ENT_QUOTES)) ?>">
    

    这里更正了。

    那就看看@m.edmonson 和@Vitor42 是怎么说的吧。没错。

    【讨论】:

    • 它被关闭了,我只是在这里复制代码时忘记输入了,对不起:)
    • 实际上我只是仔细检查了它,它在我的帖子中,但stackoverflow在之后没有显示它?>
    【解决方案2】:

    badger 不是对象,而只是表单的名称...您应该将该表单作为对象获取,然后然后在其上调用submit()

    【讨论】:

      【解决方案3】:

      尝试将 badger 作为 id 添加到表单 (&lt;form name="badger" id='badger' action="http://www.quietdean.com"&gt;) 并使用 document.getElementById("badger").submit();。我不认为獾被发现,或者如果它不是你认为的元素。还要确保页面上没有任何其他 id 为“badger”的元素。

      【讨论】:

        【解决方案4】:

        你需要你的 onclick 属性看起来像这样:

        onclick="document.forms['epb'].submit();"
        

        【讨论】:

          【解决方案5】:

          id="epb" 添加到您的表单中,然后执行以下操作:

          <a href="#" onclick="document.getElementById('epb').submit()">submit</a>
          

          【讨论】:

          • 我得到:Uncaught TypeError: Object # has no method 'submit'
          【解决方案6】:

          我遇到了同样的错误,但问题如下:

          我输入了&lt;from&gt; 标签而不是&lt;form&gt;

          -.-"

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2013-08-05
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2019-07-08
            • 1970-01-01
            相关资源
            最近更新 更多