Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/457.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将enter键绑定到页面上的特定按钮_Javascript_Jquery_Html - Fatal编程技术网

Javascript 将enter键绑定到页面上的特定按钮

Javascript 将enter键绑定到页面上的特定按钮,javascript,jquery,html,Javascript,Jquery,Html,如何将persons键盘上的enter键绑定到页面上的此特定按钮?它不是一种形式,我也不希望它是一种形式 谢谢 无论页面上的“回车”发生在何处,都将单击该按钮: <input type="button" id="save_post" class="button" value="Post" style="cursor:pointer;"/> 使用jQuery: $(document).keypress(function(e){ if (e.which == 13){

如何将persons键盘上的enter键绑定到页面上的此特定按钮?它不是一种形式,我也不希望它是一种形式


谢谢

无论页面上的“回车”发生在何处,都将单击该按钮:

<input type="button" id="save_post" class="button" value="Post" style="cursor:pointer;"/>
使用jQuery:

$(document).keypress(function(e){
    if (e.which == 13){
        $("#save_post").click();
    }
});
或者使用选择器将特定输入绑定到不同的按钮

$('body').on('keypress', 'input', function(args) {
    if (args.keyCode == 13) {
        $("#save_post").click();
        return false;
    }
});

如果要使用纯javascript:

$('body').on('keypress', '#MyInputId', function(args) {
    if (args.keyCode == 13) {
        $('#MyButtonId').click();
        return false;
    }
});

带侦听器的Vanilla JS版本:

document.onkeydown = function (e) {
  e = e || window.event;
  switch (e.which || e.keyCode) {
        case 13 : //Your Code Here (13 is ascii code for 'ENTER')
            break;
  }
}

如果此代码在页面之间共享,也不要忘记删除事件。

可能不是您想要的,但是有一个HTML属性,允许您指定一个称为访问键的特定按钮来聚焦或触发元素。是这样的:

window.addEventListener('keyup', function(event) {
  if (event.keyCode === 13) {
    alert('enter was pressed!');
  }
});

为什么我们需要
返回false
?该表格不会提交。Hi@Mai,在问题中,它特别问“它不是在表格中,我也不希望它是”!另请参阅迄今为止提供的所有方法的重大缺陷:文本框也将在enter时提交,而不允许新行。@Kaji Shift+enter应该仍然可以工作,但我同意这是一个问题纯JavaScript选项始终是bonuswindow.onkeydown或document.onkeydown?我猜在这种情况下这无关紧要,这是一个全局函数,重写它不会那么聪明。
<a href='https://www.google.com' accesskey='h'>