Javascript 设置键盘快捷键以跳转到最近的输入字段
是否有简单的JavaScript或jQuery脚本来导航表单字段,类似于phpMyAdmin对动态字段所做的操作。当您单击Ctrl+← 或Ctrl+↓ 它将“制表符”切换到下一个字段Javascript 设置键盘快捷键以跳转到最近的输入字段,javascript,jquery,input,keyboard-shortcuts,Javascript,Jquery,Input,Keyboard Shortcuts,是否有简单的JavaScript或jQuery脚本来导航表单字段,类似于phpMyAdmin对动态字段所做的操作。当您单击Ctrl+← 或Ctrl+↓ 它将“制表符”切换到下一个字段 这是从默认选项卡(转到下一个)和Shift+Tab(转到上一个)扩展而来的。我希望通过添加上、下、左、右、下、主和行/列,导航更加广泛。我相信它会像这样: $('input').keypress(function(){ //if correct key combination $(this)
这是从默认选项卡(转到下一个)和Shift+Tab(转到上一个)扩展而来的。我希望通过添加上、下、左、右、下、主和行/列,导航更加广泛。我相信它会像这样:
$('input').keypress(function(){
//if correct key combination
$(this).next('input').focus();
});
啊,从您的评论中可以看出:“因为tab转到下一个,所以shift tab转到上一个。我想通过向上、向下、左右、结束、从行/列开始在表单字段中导航。” 如果需要输入的二维网格,可能需要使用ID:
<input id="input_1_1" />
为什么要用这个而不是tab/shift+tab?因为tab转到下一个,shift-tab转到上一个。我想通过向上、向下、向左、向右、结束、从行/列开始在表单字段中导航。您可能希望将其添加到问题中。显然,在布局html时,您需要知道顺序
$('input').keypress(function(){
var id = $(this).attr('id');
id.split("_");
// if up:
$('#input_'+id[0]+'_'+(id[1] - 1)).focus();
// if down:
$('#input_'+id[0]+'_'+(id[1] + 1)).focus();
// if left:
$('#input_'+(id[0] - 1)+'_'+id[1]).focus();
// if right:
$('#input_'+(id[0] + 1)+'_'+id[1]).focus();
});