用提交按钮上的按键提交表单,它会触发onclick吗?

时间:2018-06-22 14:46:42

标签: javascript html

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

这适用于Chrome和Firefox。

问题:在Submit输入(具有焦点)上按 SPACE 键触发onclick是不是一个普遍的事实(在所有浏览器,所有平台中)?如果是这样,在哪里记录?

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

请注意,这个问题与Submit form with Enter key without submit button?不同。

2 个答案:

答案 0 :(得分:0)

对于本机HTML元素,按钮的onclick事件将在鼠标单击时以及在按钮具有焦点的情况下按下空格键或Enter键时触发。

Here's a MDN link for reference

  

按钮既可以由鼠标用户也可以由键盘用户操作。对于本机HTML元素,按钮的onclick事件会在鼠标单击时以及在按钮具有焦点的情况下同时按下鼠标和Enter时触发。

答案 1 :(得分:0)

也许是您真正要寻找的东西

注册onsubmit格式,无论使用哪个元素。

var i = 0;
document.getElementById('myForm').onsubmit = function(e) {
  console.clear();
  console.log( "Sending! " + ++i );
  
  // do not actually send (just for demonstration puposes)
  e.preventDefault();
  return false;
}
<form id="myForm" action='#'>
  <input type="text"> Hit Enter on me!<br/>
  <input type="submit" value="Hit me with spacebar">
</form>