Jquery Bootstrap 和输入字段 Focus 控件

Jquery Bootstrap and input field Focus control

我正在使用网络应用开发 POS 系统,html、css 和 JQuery/JS。 Bootstrap用于Html.

有一个主页,其中有一个输入字段,用于输入扫描的条形码。所有其他 "pages" 都是模态的。 平板设备是 Windows 平板电脑。已连接蓝牙键盘。 用户在任何情况下都不需要使用 Tab 按钮,他们将使用触摸屏进行导航并使用键盘输入客户详细信息等。

我的问题。 在主页上,用户可能不小心按了 Tab 键并将焦点从条形码输入字段移开。如果他们这样做并且没有意识到,下一个扫描的条形码将不会出现在项目列表中。我需要防止这种情况,以确保输入字段始终具有焦点。

有办法吗? 我考虑过检测主页上每个其他元素(按钮等)的焦点,然后立即将焦点重定向到输入字段。有没有更有效的方法?

谢谢

编辑:我认为这可以通过 focusout 和检测到没有打开的模式来实现..评论?

你可以试试这个:

$('#the-input').keydown(function(e){
    var keycode = (e.keyCode ? e.keyCode : e.which);
    if(keycode == '9'){
        e.preventDefault();
    }
})

防止按tab键时焦点丢失。