场景:
我们有 3 个框可以接收任何字母或数字组合作为输入。第一个框最多可以有 3 个字符,第二个框必须正好是 7 个,最后一个框必须是 2 个。
我试图让一个 jQuery 函数到位,一旦用户输入 3 个字符,然后从第 2 个到第 7 个字符,然后从第 3 个到 2 后的按钮,将用户从第一个框带到第二个人物。我还希望这个函数相当通用,以便我可以从其他控件中使用它,所以我设置了以下内容:
function moveOn(e, objID, nextID, howLong) {
if (!(e.keyCode == 9)) {
if ($(objID).val().length >= (howLong)) {
$(nextID).select();
}
}
}
导致我适应的是 Shift+Tab。我试图通过 if(keyCode == 9) 检查来捕捉它,但因为它是 keyup,所以 shift 键可能会在 Tab 之前出现一瞬间,在这种情况下,事件会在 Shift 键 (16) 而不是选项卡 (9)。我不能忽略所有 Shift 捕获,因为用户很可能会在至少一个字段中使用大写字母。
当他们输入第一个值然后意识到他们犯了错误所以他们想返回时,Shift+Tab 就开始发挥作用了。我们的员工非常受键盘驱动,因此他们几乎总是使用 Shift+Tab 来尝试返回并修复该问题。
我是否缺少一些技巧来流畅地完成这项工作?
TIA。