@ Html.TextBoxFor()がバーコードスキャナー入力を取得できるが、キーボード入力は取得できないようにするにはどうすればよいでしょうか。
ありがとう!!
@ Html.TextBoxFor()がバーコードスキャナー入力を取得できるが、キーボード入力は取得できないようにするにはどうすればよいでしょうか。
ありがとう!!
バーコードスキャナーが行うのはバーコードを読み取り可能なテキストに変換することだけなので、それは実際には不可能です。テキストの入力に使用する入力デバイスを制限する方法はありません。
if (TextBox1.Text.Substring(0,2) == "##" && TextBox1.Text.Substring(TextBox1.Text.Length - 2) == "##")
{
TextBox1.Text = TextBox1.Text.Substring(2, TextBox1.Text.Length - 4);
// or TextBox1.Text = TextBox1.Text.Replace("##","");
}
else
{
TextBox1.Text = "";
}
入力を制限することはできません。ウィンドウオブジェクトのキーダウンイベントをサブスクライブし、入力を蓄積し、バーコード形式と一致する場合は無効な入力に入れることしかできません。
一部のバーコードスキャナーは、バーコードの最初と最後にユーザー定義の文字を配置できるため、その文字を使用してバーコードの範囲を決定できます。
JavaScriptを使用してこのクライアント側を制限し、サーバー側のユーザー入力を検証します。