【问题标题】:What's standard behavior when <button> element is clicked? Will it submit the form?单击 <button> 元素时的标准行为是什么?它会提交表格吗?
【发布时间】:2021-08-25 00:01:50
【问题描述】:

在表单中单击&lt;button&gt; 元素时的标准行为是什么?它会提交表单吗?

问题是关于标签/元素&lt;button&gt;,而不是&lt;input type=button&gt;

【问题讨论】:

    标签: javascript html dom


    【解决方案1】:

    如果按钮在表单中,则默认行为是提交。

    如果按钮不在表单中,它什么也不做。

    请注意!

    始终指定类型属性 按钮。默认类型为 Internet Explorer 是“按钮”,而 在其他浏览器中(以及在 W3C 规范)它是“提交”。

    取自http://www.w3schools.com/tags/tag_button.asp

    【讨论】:

    • button 没有 type 属性在 IE11 中提交。
    • 我不敢相信我会这么说,但我认为 IE 是对的,而其他人都错了。我想我只是吐了一点。我看到 w3 说默认应该是submit,但从逻辑上讲,button 更有意义。
    【解决方案2】:

    是的,它默认为 submit 类型。

    type = submit|button|reset [CI]
    此属性声明按钮的类型。可能的值:

    submit:创建提交按钮。这是默认值

    见:http://www.w3.org/TR/html401/interact/forms.html#h-17.5

    所以当button 在表单中时它会提交它,当它不在表单中时,它仍然默认为submit 但什么也不做(因为没有与之关联的表单)。

    正如 raRaRa 在下面指出的,旧版本的 IE 将 button 标签默认类型设置为 buttonhttp://www.thefutureoftheweb.com/blog/button-wont-submit-in-ie

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-15
      • 2012-06-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-20
      相关资源
      最近更新 更多