原文: https://howtodoinjava.com/jquery/jquery-detect-if-enter-key-is-pressed/
学习在 jQuery 中检测ENTER
键示例。 这是常识,如果您必须检测浏览器中按下的键,则必须检入键码(ascii)值。 简单容易。 当您不知道如何正确使用此功能时,就会出现问题。 例如,您是否需要绑定按键或按键? ENTER
键的 ascii 值是多少?
1. jQuery 检测ENTER
键
注意,“ENTER
”键由 ASCII 代码“13” 表示。 检查此 ASCII 图表。
要检查用户是否在网页或任何输入元素上按下ENTER
键,可以将keypress
或keydown
事件绑定到该元素或文档对象本身。 然后在bind()
函数中检查所按下键的键码是否为 13。
如果按键的 ASCII 码为 13,则按“ENTER
”键; 否则,将按下其他键。
2. jQuery 检测在文本框中按下的ENTER
键
$('#someTextBox').keypress(function(event){
var keycode = (event.keyCode ? event.keyCode : event.which);
if(keycode == '13'){
alert('You pressed a "enter" key in textbox');
}
});
3. jQuery 检测在文档对象上按下的ENTER
键
$(document).keypress(function(event){
var keycode = (event.keyCode ? event.keyCode : event.which);
if(keycode == '13'){
alert('You pressed a "enter" key in somewhere');
}
});
在 Firefox 中,您必须使用event.which
来获取键码; IE 支持“event.keyCode
”和“event.which
”。
4. jQuery 检测ENTER
键 – 尝试一下
<html>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
</head>
<body>
<h1>Detect ENTER key with jQuery</h1>
<label>TextBox Area: </label>
<input id="someTextBox" type="text" size="40" />
<script type="text/javascript">
//Bind keypress event to textbox
$('#someTextBox').keypress(function(event){
var keycode = (event.keyCode ? event.keyCode : event.which);
if(keycode == '13'){
alert('You pressed a "enter" key in textbox');
}
//Stop the event from propogation to other handlers
//If this line will be removed, then keypress event handler attached
//at document level will also be triggered
event.stopPropagation();
});
//Bind keypress event to document
$(document).keypress(function(event){
var keycode = (event.keyCode ? event.keyCode : event.which);
if(keycode == '13'){
alert('You pressed a "enter" key in somewhere');
}
});
</script>
</body>
</html>
学习愉快!