您当前的位置:首页 > 网站建设 > javascript
| php | asp | css | H5 | javascript | Mysql | Dreamweaver | Delphi | 网站维护 | 帝国cms | React | 考试系统 | ajax | jQuery | 小程序 |

js获取USB扫码枪数据的方法

51自学网 2022-02-21 13:40:44
  javascript

本文实例为大家分享了js获取USB扫码枪数据的具体过程,供大家参考,具体内容如下

废话不多说,直接上代码,这个方法避免了 首字缺失,字符串乱码等等问题,特别好用,记录一下

中间的Ajax可直接调用登录功能,实现自动登录

说明:输入框需要获得焦点,这个是必须的,其次为了防止回车触发手动登录,需要添加οnkeypress="if(event.keyCode==13) return false;"这个操作,这个在回车的时候,输入框焦点不会丢失,除非手动切换焦点,或者调用focus();方法

<div class="form-group"> <label for="inputUsernameEmail">账号</label> <input type="text" placeholder="请输入账号" name="username" id="loginname" class="form-control" autofocus onkeypress="if(event.keyCode==13) return false;"></div>

代码:

<script>  window.onload = (e)=> {   this.start = new Date().getTime()   let code = ''   let lastTime, nextTime   let lastCode, nextCode   let that = this   window.document.onkeypress = function (e) {    if (window.event) { // IE     nextCode = e.keyCode    } else if (e.which) { // Netscape/Firefox/Opera     nextCode = e.which    }    console.log('nextCode', nextCode)    if (e.which === 13 || window.event === 13) {     var deviceCode = code;     console.log(code)     console.log('扫码结束')     console.timeEnd()     code = ''     lastCode = ''     lastTime = ''     $.ajax({      cache: true,      type: "POST",      url: rootPath + "/admin/login",      data: {code: deviceCode, type: 1},      async: false,      error: function (request) {       $("#loginname").val("");       $.modal.alertError("系统错误");      },      success: function (data) {       $("#loginname").val("");       if (data.code == 200) {        location.href = rootPath + '/admin/index';       } else {        $.modal.alertError(data.msg);       }      }     });    }    nextTime = new Date().getTime()    if (!lastTime && !lastCode) {     console.log('扫码开始。。。')     code += e.key    }    if (lastCode && lastTime && nextTime - lastTime > 500) { // 当扫码前有keypress事件时,防止首字缺失     console.log('防止首字缺失。。。')     code = e.key    } else if (lastCode && lastTime) {     console.log('扫码中。。。')     code += e.key    }    lastCode = nextCode    lastTime = nextTime   }  }</script>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持51zixue.net。


下载地址:
JavaScript的基础语法和数据类型详解
vue 如何实现表单校验
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。