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

如何使用Enter键作为事件处理程序(javascript)?,javascript,events,button,handler,enter,Javascript,Events,Button,Handler,Enter,我正在试着做我自己的聊天。。。所以我有一个输入文本字段,提交按钮,甚至不是提交,它只是一个按钮。。。。因此,当按下enter键时,我需要输入字段的值显示在我的文本区域(只读) 好吧,看。。长话短说,我只需要一个基本的enter键事件处理程序,我知道它与提交按钮完美配合,因为您根本不需要编写任何程序,它是默认的。但是我的按钮是type=“button”。。。。所以当你按下回车键时,什么也没发生。。。如何通过按enter键触发我的按钮?您可以使按钮类型submit,也可以使用onkeyup事件处理程

我正在试着做我自己的聊天。。。所以我有一个输入文本字段,提交按钮,甚至不是提交,它只是一个按钮。。。。因此,当按下enter键时,我需要输入字段的值显示在我的文本区域(只读)


好吧,看。。长话短说,我只需要一个基本的enter键事件处理程序,我知道它与提交按钮完美配合,因为您根本不需要编写任何程序,它是默认的。但是我的按钮是type=“button”。。。。所以当你按下回车键时,什么也没发生。。。如何通过按enter键触发我的按钮?

您可以使按钮类型
submit
,也可以使用
onkeyup
事件处理程序检查keycode 13

以下是关键代码的列表:)。您必须知道如何从事件中获取密钥码

编辑:一个示例

HTML:


这里是一个用于侦听enter键的工作代码段

$(document).ready(function(){

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

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

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

HTML:


检查此线程:在表单中,按钮元素默认为submit按钮。如果在表单中设置输入并使用普通提交,则应该能够在不使用脚本的情况下完成所有工作。然后,您可以在页面加载时添加onsubmit侦听器,用XHR替换submit。现在你有了一个可以使用或不使用JS的聊天页面,你有了一个很好的退路。XHR的问题是,当按下按钮时,每次发送聊天消息时,页面都必须刷新,我都可以使用AJAX和所有东西,MySQL数据库,等等,但我必须点击按钮,我发送的所有信息都进入聊天室,真是太差劲了。。。。我需要参加比赛handler@Juan-答案在我提供的链接中。有使用JQuery的代码,也有使用普通Javascript的代码。请选择。如果您希望在按下提交时页面不刷新,您应该处理表单的onsumbit,执行您想要的操作,然后返回
false
。keycode 13可能是我要找的,但我不熟悉,我没有看到或使用过它,您能提供一个相当不错的methanks entonio代码片段吗,简单的回答,简短而不复杂有趣,我相信这在当时并不存在。我想现在再也没有人写这种事件处理程序了。不要像我刚才那样复制/粘贴相同的答案,在一个地方发布,然后在另一个地方投票关闭。很好,entonio和LGSon。我只是想传播有关event.key的消息。这不是一个完全的复制/粘贴,但您的评论和否决票让我阅读了更多关于标记和相关主题的内容,以减少我对堆栈溢出礼仪的无知,所以谢谢您。
function inputKeyUp(e) {
    e.which = e.which || e.keyCode;
    if(e.which == 13) {
        // submit
    }
}
$(document).ready(function(){

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

function pressed(e)
{
    if(e.keyCode === 13)
    {
        alert('enter pressed');
        //put button.click() here
    }
}
<input onkeyup="inputKeyUp(event)" ...>
function inputKeyUp(e) {
    if (e.key === 'Enter') {
        // submit
    }
}