所以我有两个文本框,都被条形码扫描仪使用。文本框 1 是材料,文本框 2 是进度。我想在TB1扫描" F4"并聚焦文本框1时清除TB2和TB2。
我想不通,就来找你了。
感谢您的任何帮助。
因此,捕获条形码扫描非常棘手。事件模型是问题所在。更糟糕的是,你正在使用 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();
}
});
其中#textBox2
是要查询的input
元素的id
属性,#textBox1
是包含材料价值的input
元素的id
属性。
从技术上讲,这可以通过 ASP.NET 回发模型进行黑客攻击,但它并不漂亮。您必须使用相同的 JavaScript 事件来实际强制回发:
$("#textBox2").on('keyup', function(event) {
o = $(this);
if (o.val() === 'F4') {
$('#formName').submit();
}
});
其中#formName
是您所在的form
元素的id
属性。
服务器端,您必须使用第二个文本框的TextChanged
事件并检查其值,以了解您应该清除两者的值。只是有点变幻无常。
最后,使用此回发模型,您必须注册一些客户端启动脚本以将焦点设置为第一个文本框,因为您需要一些 JavaScript 来执行此操作。如您所见,它只会变得更丑。