jQuery – keydown / keypress / keyup ENTERKEY检测?

试图让jQuery来检测input的input,但空间和其他键被检测到,input不被检测到。 以下是什么错误:

$("#entersomething").keyup(function(e) { alert("up"); var code = (e.keyCode ? e.keyCode : e.which); if (code==13) { e.preventDefault(); } if (code == 32 || code == 13 || code == 188 || code == 186) { $("#displaysomething").html($(this).val()); }); <input id="entersomething" /> <div id="displaysomething"&gt;&lt;/div&gt; 

http://jsfiddle.net/zeRrv/

的JavaScript / jQuery的

 $("#entersomething").keyup(function(e){ var code = e.which; // recommended to use e.which, it's normalized across browsers if(code==13)e.preventDefault(); if(code==32||code==13||code==188||code==186){ $("#displaysomething").html($(this).val()); } // missing closing if brace }); 

HTML

 <input id="entersomething" type="text" /> <!-- put a type attribute in --> <div id="displaysomething"></div> 

我想你会遇到关键事件 – 因为它首先触发按键 – 如果你想排除回车键,你将无法阻止第二个关键事件的传播。

jQuery Sparkle包含一个自定义事件。 来源可以在这里看到: http : //github.com/balupton/jquery-sparkle/blob/master/scripts/resources/jquery.events.js

这里是一个演示http://www.balupton.com/sandbox/jquery-sparkle/demo/#event-enter