javascript判断是否按回车键
<input id="chatMsg" name="chatMsg" type="text"
function enterHandler(event)
{//获取用户单击键盘的“键值”
var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
//如果是回车键
if (keyCode == 13){
sendRequest();}
}
onkeyup,onkeydown,onkeypress
在使用JavaScript做WEB键盘事件侦听捕获时,主要采用onkeypress、onkeydown、onkeyup三个事件进行出来。该三个事件的执行顺序如下:onkeydown > onkeypress >onkeyup。在一般情况下,采用三种键盘事件均可对键盘输入进行有效的响应。当在实际使用中,会发现这几者有些不同的差别。
3、keypress事件的keyCode无法区分主键盘上的数字键和副键盘数字键的,而keydown、keyup的keyCode对主副键盘的数字键敏感。
Netscape/Firefox/Opera中不支持 window.event.keyCode,需要用event.which代替,IE用event.keCode方法获取当前被按下的键盘按键值,而NetScape/FireFox/Opera用的则是event.which。
event.which属性的返回值是Number类型,返回触发当前事件时按下的键盘按键或鼠标按钮。
在mousedown、mouseup事件中,event.which
属性返回的是对应鼠标按钮的映射代码值(相当于event.which
)
在keypress事件中,event.which
属性返回的是输入的字符的Unicode值(相当于event.charCode)
在keydown、keyup事件中,event.which
属性返回的是对应按键的映射代码值(相当于evenet,keyCode)
验证代码:(链接:http://www.jquery123.com/keypress/)
<!DOCTYPE html>
<html>
<head>
<style>
fieldset { margin-bottom: 1em; }
input { display: block; margin-bottom: .25em; }
#print-output {
width: 100%;
}
.print-output-line {
white-space: pre;
padding: 5px;
font-family: monaco, monospace;
font-size: .7em;
}
</style>
<script src="http://cdn.bootcss.com/jquery/1.11.2/jquery.min.js"></script>
</head>
<body>
<form>
<fieldset>
<label for="target">Type Something:</label>
<input id="target" type="text" />
</fieldset>
</form>
<button id="other">
Trigger the handler
</button>
<script src="http://api.jquery.com/resources/events.js"></script>
<script>
var xTriggered = 0;
$("#target").keypress(function(event) {//keydown、keyup验证方法相同
if ( event.which == 13 ) {
event.preventDefault();
}
xTriggered++;
var msg = "Handler for .keypress() called " + xTriggered + " time(s).";
$.print( msg, "html" );
$.print( event );
});
$("#other").click(function() {
$("#target").keypress();
});</script>
</body>
</html>