Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 识别扫描仪设备输入或手动输入的问题_Javascript_Jsp_Input_Scanning - Fatal编程技术网

Javascript 识别扫描仪设备输入或手动输入的问题

Javascript 识别扫描仪设备输入或手动输入的问题,javascript,jsp,input,scanning,Javascript,Jsp,Input,Scanning,我现在有一个不同的挑战。我正在设计一个网页,用户可以使用扫描设备输入长序列号,也可以通过键盘手动输入JSP文本框中的值。我需要确定每个字段的输入类型(手动或扫描仪输入),并在结果页面上以不同的样式显示 有人能帮我吗?我们怎么做?我找到了一种通过java脚本实现的方法。在按键时编写JS函数,该函数将计算并保持按下的按键数。如果计数超过17位,则手动输入,否则为扫描仪输入。但这个想法听起来不太好,也可能不是有效的方法,我的经理也不喜欢。你能建议其他的选择吗,或者只是修改一下我提到的想法 提前谢谢。。

我现在有一个不同的挑战。我正在设计一个网页,用户可以使用扫描设备输入长序列号,也可以通过键盘手动输入JSP文本框中的值。我需要确定每个字段的输入类型(手动或扫描仪输入),并在结果页面上以不同的样式显示

有人能帮我吗?我们怎么做?我找到了一种通过java脚本实现的方法。在按键时编写JS函数,该函数将计算并保持按下的按键数。如果计数超过17位,则手动输入,否则为扫描仪输入。但这个想法听起来不太好,也可能不是有效的方法,我的经理也不喜欢。你能建议其他的选择吗,或者只是修改一下我提到的想法


提前谢谢。。!!如果你能在我的情况下帮助我,我真的很感激

为什么不测量输入代码所需的时间?如果它比某个时间快(从输入第一个数字开始),它是从扫描仪来的吗

感谢Stefan的快速响应。。!!你能分享一些我们如何测量时间的更多细节吗?是的,就像我们在沃尔玛或任何杂货店看到的那样,它是通过扫描仪读取条形码的。它只是自动将值填充到您选择的字段中。还有一个问题,你认为我在讨论中提到的选项是可靠的吗?使用Date.now()获取当前时间(以毫秒为单位),并将其存储在给定字段的第一个按键上。输入最后一位数字后,将存储的时间与Date.now()进行比较。如果差异足够小,则通过扫描仪输入数字。感谢Stefan,我使用了这次测量,经过所有研究,我得出结论,这是处理这种情况的唯一方法。这只是为了提供信息,我提到的第一种方法是使用onkeypress事件手动按下计数键,这种方法没有任何用处,因为扫描仪也使用键盘界面,并且扫描仪也会为每个数字触发onkeypress事件。感谢更新!如果答案正确,您可能希望接受它(添加绿色复选标记以将问题标记为已回答)