jquery监听扫码枪获得值

客户一直说 扫码枪要一直获得焦点才能用,用户体验差 ,想做一个 在这个页面 有没有焦点都要获得到值,想了一下 只有用监听的方式了

 

// 写一个监听扫描枪 事件的方法



var code = '';
var lastTime = 0;
// 清空临时变量
function clearCode() {
code = '';
lastTime = 0;
}
window.addEventListener('keypress', function(e) {
var currCode = e.which;
var currTime = new Date().getTime();
if (lastTime > 0) {
if (currTime - lastTime <= 300) {
code += String.fromCharCode(currCode);
} else if (currTime - lastTime > 1000) {
// 超时清空
clearCode();
}
}
// 第一次按键
else {
code = String.fromCharCode(currCode);
}
lastTime = currTime;
// 遇到回车
if (currCode == 13) {
// alert(code); // 这里得到码,做下一步业务处理

if(code&&code.length>7){

$("#lendUsers").val(code);
$("#lendUser1").val(code);
$("#lendUser2").val(code);
$("#lendUserss").val(code);

$('#lendUsers').trigger("change");
$('#lendUser1').trigger("change");
$('#lendUser2').trigger("change");
$('#lendUserss').trigger("change");

}else{
$("#select_confirmnum").val(code);
$("#search").click();
}
// 回车输入后清空
clearCode();

}

});

 

 

有很多类似的方法 但是总是不知道这样那样的方法不能用 有的大小写 有的有代码缺失  挺坑的 ,还好 自己弄清楚了怎么操作的

posted @ 2019-10-21 17:19  喜欢22度的晴天  阅读(3141)  评论(0编辑  收藏  举报