如何从Zebra mc330m扫描仪中获取javascript中窗口上的文档[keypress]的输入?

问题描述 投票:0回答:1

我将扫描器配置为在输入结束时发送Enter,js正确读取但其他字符丢失。

我试图用event.keyCode,event.which,event.charCode解码输入字符,但没有任何作用。如果我将它附加到正常输入它是有效的。它也适用于浏览器地址栏(chrome)。但是当我将它附加到文档['onkeypress']时,它不会读取字符。

我从这里尝试了Martin Orth解决方案:https://developer.zebra.com/thread/35513但我无法使其工作我甚至不知道它是否是相同的扫描仪。

从这里我知道扫描仪正在发送ASCII字符,javascript没有机制来读取它们? https://developer.zebra.com/thread/34536

如果有人知道这个问题的解决方案,非常感谢帮助。如果可能的话,我更喜欢使用js / jquery。

javascript jquery barcode zebra
1个回答
1
投票

这个功能,使用keypress,最近添加到DataWedge 7.3,它包含在最新的MC33操作系统更新(02.13.15 - LG Update 16)中 - 我写了一篇关于如何使用它的博客:https://developer.zebra.com/blog/listening-keypress-events-datawedge。为清楚起见,我为Zebra工作


3
投票

这段代码的作用是创建一个以它为中心的输入,但由于IE在关注隐藏文本字段方面存在问题,因此绝对会在屏幕外定位。然后检测输入的变化并输出现在的控制台。

$(document).ready(function(){
     $(".scanner-input").focus().on("input",function(){
          let barcode = $(this).val();
          console.log(barcode);
          $(this).val("");
     }).blur(function(){
         $(this).focus();
     });
});
.scanner-input{position:absolute;left:-10000px;}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="text" class="scanner-input">
© www.soinside.com 2019 - 2024. All rights reserved.