1

だから私は2つのテキストボックスを持っており、両方ともバーコードスキャナーで使用されています。Textbox1 はマテリアルで、Textbox2 はプログレスです。TB2 が "F4" をスキャンして Textbox1 にフォーカスしたときに、TB1 と TB2 をクリアしたいと思います。

私はそれを理解できなかったので、スタックに来ました。

助けてくれてありがとう。

4

1 に答える 1

1

そのため、バーコード スキャンをキャプチャするのは困難です。イベントモデルが問題です。さらに悪いことに、ASP.NET を使用しているため、さらに難しくなります。でも、JavaScriptなら可能です。次の jQuery を検討してください。

$("#textBox2").on('keyup', function(event) {
    o = $(this);
    if (o.val() === 'F4') {
        // post the values back to the server via AJAX

        // clear the text boxes
        $("#textBox1").val('');
        o.val('');

        // focus the first text box
        $('#textBox1").focus();
    }
});

where#textBox2は調べたい要素のid属性であり、 は物質値を格納する要素の属性です。input#textBox1idinput

これはASP.NET ポストバック モデルで技術的にハッキングされる可能性がありますが、きれいではありません。実際にポスト バックを強制するには、同じ JavaScript イベントを使用する必要があります。

$("#textBox2").on('keyup', function(event) {
    o = $(this);
    if (o.val() === 'F4') {
        $('#formName').submit();
    }
});

where#formNameは、あなたがいる要素のid属性です。form

次に、サーバー側では、2 番目のテキスト ボックスのイベントを消費し、TextChangedその値をチェックして、両方の値をクリアする必要があることを確認する必要があります。少し気まぐれです。

最後に、このポスト バック モデルを使用して、最初のテキスト ボックスにフォーカスを設定するクライアント スタートアップ スクリプトを登録する必要があります。これを行うには JavaScript が必要になるからです。ご覧のとおり、見苦しくなります。

于 2013-11-06T16:02:37.710 に答える