在文本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>
我发现最好的方法是使用keydown
( keyup
不适合我)。
注意:我也禁用了表单提交,因为通常当你喜欢做一些行动的时候,按下回车键只有你不喜欢的是提交表单:)
$('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 } }); });