隐式表单提交是在聚焦 input
元素时只需按下 ENTER 键的动作。事实证明,这只在两种情况下是可能的:
- 表单有一个提交按钮
- 表单只有一个
input
元素
<form onsubmit="alert(1)">
<!-- 当 foo 被聚焦时,如果你按下回车,这将发出警告 -->
<input name="foo" />
</form>
<form onsubmit="alert(2)">
<!-- 这不会 -->
<input name="foo" />
<input name="bar" />
</form>
您可以通过添加一个隐藏的提交按钮来解决这个问题。
<input type="submit" hidden />
它也明确在规范定义。