4

http://jsfiddle.net/PCGvG/

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

4

1 回答 1

17

该元素默认<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 仍然会提交表单,至少在某些浏览器上是这样。)

关于您的<input type="button">行为不同的评论:这是正确的。type="button" 的输入与 type="button" 的按钮作用相同,而 type="submit" 的输​​入与 type="submit" 的按钮作用相同。

于 2013-09-10T07:25:16.967 回答