如何检测 javascript 上的输入文本按键

How to detect input-text pressed key on javascript

我有这个简单的文档:

   <!DOCTYPE html>
      <html>
        <body>
        <input id="mytext" onkeypress="myfun(e)"></input>
        <p id="demo"></p>
        <script> function myfun(e){ 
                if(e.keyCode==13) alert('Enter Key Pressed');}
        });
        </script>
        </body>
      </html>

我想要的是: 当用户在 mytext 上按下 enter 键时,显示一个警告以通知用户这样的消息:Enter Key Pressed

我做了上面的所有事情,但是它不起作用,在 mytext 上按下输入时没有显示任何警报。

请帮忙!..

您可以添加事件侦听器来侦听 onkeypress 事件:

document.getElementById('mytext').addEventListener('keypress', function(e) {
    if(e.keyCode == 13) alert('Enter Key Pressed');
});

此外,输入标签没有结束标签。 Here's 一个活生生的例子

如果您想将其作为处理程序内联调用,试试这个:

<input id="mytext" onkeypress="myfun(event)">
<p id="demo"></p>
<script>
function myfun(event){ 
    var key = event.keyCode || event.which;
    if(key === 13) alert('Enter Key Pressed');
}
</script>

您必须使用 event 作为参数以确保它作为处理程序正常工作。现在,获取密钥代码并检查它是否为 13,然后发出警报。

当您将 myfun(e) 替换为 myfun(event) 时,您的代码有效。我还纠正了一些语法错误。

 <html>
    <body>
        <input id="mytext" onkeypress="myfun(event)"></input>
        <p id="demo"></p>
        <script> 
            function myfun(e){ 
                    if(e.keyCode==13) alert('Enter Key Pressed');
            };
        </script>
    </body>
</html>