2016-09-16 5 views
0

私はWebシステム、html、css、JQuery/JSを使ってPOSシステムを開発しています。ブートストラップはHtmlで使われています。Jqueryブートストラップと入力フィールドフォーカスコントロール

スキャンされたバーコードが入力される1つの入力フィールドを持つメインページがあります。他のすべての「ページ」はモーダルです。 タブレットデバイスはWindowsタブレットです。 Bluetoothキーボードが接続されています。 ユーザーがタブボタンを使用する必要がある状況はありません。タッチスクリーンを使用してナビゲートし、キーボードで顧客の詳細などを入力します。

メインページでは、ユーザーが誤ってTabキーを押して、バーコード入力フィールドからフォーカスを離すことができます。彼らがこれを行い、認識していない場合、次のスキャンされたバーコードはアイテムリストに表示されません。私は、入力フィールドに常にフォーカスがあることを確認するために、これを防ぐ必要があります。

これを行う方法はありますか? 私は、メインページ(ボタンなど)上の他のすべての要素でフォーカスを検出し、すぐにフォーカスを入力フィールドにリダイレクトすることを検討しました。より効率的な方法がありますか?

おかげ

編集:私はコメント。これはfocusoutで達成することができると思うと何のモーダルが開いていないことを検出しますか?

答えて

1

あなたはこれを試すことができます。

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

Tabキーを押したときにそれが失われることにフォーカスを防ぐことができます。

+0

完璧!治療のように動作します。ありがとう:) –

+0

あなたはようこそ! – Sergiu

関連する問題