我在javascript中有以下代码,以便从文本框和textareas导航。问题是功能工作正常,但是当点击输入时它会导航到下一个文本框,同时导航到下一页,如何在单击输入键时阻止导航到下一页。有人可以帮我谢谢。
$('input[type="text"],textarea').keyup(function(e){
if(e.which==39 || e.which==13)
$(this).closest('td').next().find('input[type="text"],textarea').focus();
else if(e.which==37 || e.which==8)
$(this).closest('td').prev().find('input[type="text"],textarea').focus();
else if(e.which==40 || e.which==13)
$(this).closest('tr').next().find('td:eq('+$(this).closest('td').index()+')').find('input[type="text"],textarea').focus();
else if(e.which==38 || e.which==8)
$(this).closest('tr').prev().find('td:eq('+$(this).closest('td').index()+')').find('input[type="text"],textarea').focus();
});
答案 0 :(得分:4)
在文本输入的keyDown上,如果是输入键则捕获输入并阻止默认行为:
$('input[type="text"],textarea').keydown(function () {
if(event.keyCode == 13){
event.preventDefault();
}
});
如果我没记错的话,keyDown是必要的,以防止默认的输入操作,而不是keyUp。但请试一试,看看哪些有效。