【问题标题】:Issue of Identifing input from scanner device or Manual entry识别来自扫描仪设备的输入或手动输入的问题
【发布时间】:2015-03-26 23:49:20
【问题描述】:

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

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

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

【问题讨论】:

    标签: javascript jsp input scanning


    【解决方案1】:

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

    【讨论】:

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