在文本input字段中检测回车键

我正在尝试做一个function,如果input时按特定的input。

我在做什么错了?

$(document).keyup(function (e) { if ($(".input1").is(":focus") && (e.keyCode == 13)) { // Do something } }); 

有没有更好的方式做这个会说,如果input按下.input1做function?

 $(".input1").on('keyup', function (e) { if (e.keyCode == 13) { // Do something } }); 
 $(document).keyup(function (e) { if ($(".input1:focus") && (e.keyCode === 13)) { alert('ya!') } }); 

或者只是绑定到input本身

 $('.input1').keyup(function (e) { if (e.keyCode === 13) { alert('ya!') } }); 

要找出您需要哪个keyCode,请使用http://keycode.info网站;

试试这个来检测文本框中按下的Enter键。

 $(function(){ $(".input1").keyup(function (e) { if (e.which == 13) { // Enter key pressed } }); }); 

event.key ===“Enter”

最近更清洁:使用event.key没有更多的任意数字代码!

 const node = document.getElementsByClassName(".input")[0]; node.addEventListener('keydown', function(event) { if (event.key === "Enter") { // Do work } }); 

Mozilla文档

支持的浏览器

回答这个问题可能为时已晚。 但下面的代码只是防止input密钥。 只需复制和粘贴应该工作。

  <script type="text/javascript"> function stopRKey(evt) { var evt = (evt) ? evt : ((event) ? event : null); var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null); if ((evt.keyCode == 13) && (node.type=="text")) {return false;} } document.onkeypress = stopRKey; </script> 

我发现最好的方法是使用keydownkeyup不适合我)。

注意:我也禁用了表单提交,因为通常当你喜欢做一些行动的时候,按下回车键只有你不喜欢的是提交表单:)

 $('input').keydown( function( event ) { if ( event.which === 13 ) { // Do something // Disable sending the related form event.preventDefault(); return false; } }); 
  $(document).ready(function () { $(".input1").keyup(function (e) { if (e.keyCode == 13) { // Do something } }); });