如何使用Enter键作为事件处理程序(javascript)?

How do I use the Enter key as an event handler (javascript)?

本问题已经有最佳答案,请猛点这里访问。

即时通讯试图让我自己的聊天...所以我有一个输入文本字段,提交按钮,甚至没有提交,它只是一个按钮....所以当按下回车键,我需要的值 输入字段出现在我的textarea(只读)...

好吧..长话短说,我只想要一个基本的输入键事件处理程序,我知道它与提交按钮完美配合cus你根本不需要编程任何东西,它的默认值。 但我的按钮是type ="button"....所以当你按下输入时没有任何反应...如何通过按Enter触发我的按钮?


您可以使按钮类型submit,或者您可以使用onkeyup事件处理程序并检查键代码13。

这是一个关键代码列表:Javascript字符代码/密钥代码)。 您必须知道如何从事件中获取密钥代码。

编辑:一个例子

HTML:

1
<input onkeyup="inputKeyUp(event)" ...>

简单的javascript:

1
2
3
4
5
6
function inputKeyUp(e) {
    e.which = e.which || e.keyCode;
    if(e.which == 13) {
        // submit
    }
}


这是一个用于监听回车键的工作代码段

1
2
3
4
5
6
7
8
9
10
11
12
13
$(document).ready(function(){

    $(document).bind('keypress',pressed);
});

function pressed(e)
{
    if(e.keyCode === 13)
    {
        alert('enter pressed');
        //put button.click() here
    }
}


以下是当前接受的答案(来自@entonio)的一个版本,其中包含key而不是keyCode:

HTML:

1
<input onkeyup="inputKeyUp(event)" ...>

简单的javascript:

1
2
3
4
5
function inputKeyUp(e) {
    if (e.key === 'Enter') {
        // submit
    }
}