【问题标题】:HTML form press 'Enter' in an input text cause click on buttonHTML 表单在输入文本中按“Enter”导致单击按钮
【发布时间】:2013-09-13 04:47:27
【问题描述】:

http://jsfiddle.net/PCGvG/

为什么在这个示例中,当我在输入文本中按“Enter”时,它会执行onclick?使用<input type="button"> 时不会...

【问题讨论】:

  • 这更多的是浏览器行为,而不是 angularjs

标签: html forms events button input


【解决方案1】:

元素<button> 默认有type="submit"。见http://www.w3.org/TR/html401/interact/forms.html#h-17.5

解决方案:如果您不希望调用按钮的单击处理程序,请明确指定 type="button"。

<form name="myForm">
    <button type="button" id="test">Click</button>
    <input type="text" name="q" />
</form>

(至少在某些浏览器上,按 Enter 仍会提交表单。)

关于您对&lt;input type="button"&gt; 行为不同的评论:没错。 type="button" 的输入与 type="button" 的按钮作用相同,而 type="submit" 的输​​入与 type="submit" 的按钮作用相同。

【讨论】:

    猜你喜欢
    • 2021-12-08
    • 1970-01-01
    • 2014-02-20
    • 1970-01-01
    • 2013-03-30
    • 1970-01-01
    • 2012-09-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多