按enter键提交HTML表单时只需一次输入,而不是两次输入
有人能解释这种行为吗?在HTML表单的文本框中按Enter键可在表单包含单个文本框时提交表单,但在表单包含两个或多个文本框时不提交表单 JSFIDLE(一个输入):按enter键提交HTML表单时只需一次输入,而不是两次输入,html,form-submit,Html,Form Submit,有人能解释这种行为吗?在HTML表单的文本框中按Enter键可在表单包含单个文本框时提交表单,但在表单包含两个或多个文本框时不提交表单 JSFIDLE(一个输入): jsFiddle(两个输入):浏览器似乎认为,由于只有一个输入,所以它也是提交控件。关注它并按enter键将提交表单,与关注submit按钮的方式相同 当您将type=“submit”添加到其中一个时,您可以使用任意数量的其他文件和 我没有任何引用来支持这一点,但在我看来这似乎是合乎逻辑的。不幸的是,表单默认在enter时提交,只需
jsFiddle(两个输入):浏览器似乎认为,由于只有一个输入,所以它也是提交控件。关注它并按enter键将提交表单,与关注submit按钮的方式相同 当您将
type=“submit”
添加到其中一个
时,您可以使用任意数量的其他文件和
我没有任何引用来支持这一点,但在我看来这似乎是合乎逻辑的。不幸的是,表单默认在enter时提交,只需一次输入 您可以为每个人提供一个提交表单的javascript命令,或者放置一个宽度为0和/或可见性为none的提交按钮。 例如:
<form>
<input style='width:0; visibility:hidden' type='submit'>
<input>
<input>
</form>
我觉得这种行为太不一致了。我可以理解为什么在唯一的
上按enter键提交表单,因为它是唯一可以交互的表单元素。但我不明白,如果另一个
包含type=“submit”
,为什么要在一个
上按enter键提交表单。我想知道是否有规范提供了这种行为背后的基本原理