首页 > 解决方案 > 使用提交按钮上的按键提交表单,它会触发 onclick 吗?

问题描述

当将焦点放在提交按钮上,然后按下SPACE以下代码段时,它会“点击”(使用键盘)提交按钮,并被onclick="alert()"触发。

这适用于 Chrome 和 Firefox。

SPACE问题:在提交输入(即焦点)上的按键触发是否是普遍事实(在所有浏览器、所有平台中)onclick?如果是这样,它记录在哪里?

<form>
<input type="submit" onclick="alert()" />
</form>

请注意,这与使用 Enter 键而没有提交按钮的提交表单不是同一个问题?.

标签: javascripthtml

解决方案


对于原生 HTML 元素,按钮的 onclick 事件将在鼠标单击和按下 Space 或 Enter 时触发,而按钮具有焦点。

这是一个 MDN 链接供参考

按钮既可以由鼠标用户操作,也可以由键盘用户操作。对于原生 HTML 元素,按钮的 onclick 事件将在鼠标单击和按下 Space 或 Enter 时触发,而按钮具有焦点。


推荐阅读