如何检测输入到网页输入的键盘楔形扫描器条码并阻止键盘输入 [英] How to detect keyboard wedge scanner barcode input into web input and block keyboard entry

查看:30
本文介绍了如何检测输入到网页输入的键盘楔形扫描器条码并阻止键盘输入的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要强制条形码扫描仪在网页表单的文本字段中输入,我必须阻止键盘或粘贴输入。这是为了在制造环境中使用,在那里,个人用户有他们自己携带的条形码卡,他们不允许预订其他人的工作,这将是作弊!他们扫描的代码是他们的员工编号,长度始终为4个字符。条形码扫描仪是USB,其作用类似于键盘,依次输入每个字符。

推荐答案

我想出的代码检测字符1和4之间的时间。如果小于10毫秒,则代码是条形码扫描的,如果更长,则是通过键盘输入的。如果粘贴代码,则该字段的长度不会为1个字符,因此未设置计时器变量,并且时间再次长于10毫秒。

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Untitled Document</title>

<script>
    var startTime = new Date().getTime();

  function barcodeScanCheck(){
    var input = document.getElementById("barcode").value;

    if(input.length == 1){
      startTime = new Date().getTime();
    }
    else if(input.length == 4){
      var elapsedTime = new Date().getTime() - startTime;
      if(elapsedTime < 10){
        alert("Barcode");
      }
      else{
        document.getElementById("barcode").value = "";
        alert("Keyboard");
      }
    }
  }
</script>

</head>

<body>

<form action="input.html" method="get">
<input id="barcode" name="barcode" type="text" onInput="barcodeScanCheck()">
<input name="submit" type="submit">
</form>

</body>
</html>

这篇关于如何检测输入到网页输入的键盘楔形扫描器条码并阻止键盘输入的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆