0

昨日私はここに質問を書きましたが、私がその要求をした方法はちょっと混乱しました.

今、私はそれを別の方法で試します。

バーコードをスキャンして入力を入力フィールドに書き込むバーコードハンドスキャナーがあります。10 桁を入力して 5 ミリ秒以内にリターンを押すのと同じです。

例: 2134463342 + リターン

今、リロード時にオートフォーカスに設定されたフォームがあり、スキャナーから入力を取得できます。

入力フィールドに入力せずに、スキャンを実行してデータベースに渡すことができるようにしたいと考えています。

例: ユーザーは、入力フィールドに入力せずに何かをスキャンするのではなく、Web ページを閲覧するなどの他のことを行います。

サイトからいくつかのコードをコピーしました:

    var chars = []; 
    $(window).keypress(function(e) {
        if (e.which >= 48 && e.which <= 57) {
            chars.push(String.fromCharCode(e.which));
        }
        console.log(e.which + ":" + chars.join("|"));
        if (pressed == false) {
            setTimeout(function(){
                if (chars.length >= 10) {
                    var barcode = chars.join("");
                    console.log("Barcode Scanned: " + barcode);
                    // assign value to some input (or do whatever you want)
                    $("#barcode").val(barcode);
                }
                chars = [];
                pressed = false;
            },500);
        }
        pressed = true;
    });
});
$("#barcode").keypress(function(e){
    if ( e.which === 13 ) {
        console.log("Prevent form submit.");
        e.preventDefault();
    }
});

コードは正常に動作します。私の質問は、入力フィールド/フォームに入力せずにその操作を行うことは可能ですか?

ありがとう

4

1 に答える 1

1

@alexMmM CSS を試して入力ボックスを非表示にしましたか??? style= display:none またはstyle= visibility:hiddenプロパティ??? 入力ボックスを非表示にし、入力フィールドに入らずに完了したような仮想感覚を与えます...

于 2013-10-30T09:57:57.643 に答える