Sco*_*t F 13 javascript unicode keycode keypress character-encoding
我的条码扫描器的字符代码问题用于将字符输入到Web界面.
如果条形码具有诸如 - (短划线/连字符/减号)之类的符号,则它给出了在许多字符集中正确的字符代码189.实际上,如果我在扫描时选择了文本输入,它将按预期输入 - 字符.但是,如果我从全局文档拦截keypress或keyup事件并使用fromCharCode()函数自己构建字符串,而不是让浏览器处理它,我得到½字符,这当然是189的unicode转换码.
在事件本身中,keyCode和"which"显示为189,而keyIdentifier为"U + 00BD".不幸的是,我真正需要的charCode值始终为0.
当然,我现在可以在大约5秒内手动处理这种转换.问题是我不知道我可能从扫描仪获得的完整代码集,我担心未来几周或几个月会出现未处理的角色,并会让人头疼.或者,我可以将原始字符代码上传到服务器并尝试在PHP中处理它.我更喜欢在客户端上处理它,但是出于时间和响应的原因.将假按键发送到不可见的文本输入可能也会起作用,但这是一个非常糟糕的解决方法.
似乎应该有更好的方法来做到这一点,我必须遗漏一些明显的东西.有没有人有任何想法?
如果您通过获取键码来截取键盘处理并将其解释为字符fromCharCode,则会得到错误的结果,因为键码只是识别按键,而不是字符.按键关联的字符取决于键盘驱动程序.
因此拦截例程需要知道键盘键分配.您可以使用常见的Windows密钥代码作为起点,但随后您的软件将依赖于系统.
| 归档时间: |
|
| 查看次数: |
1108 次 |
| 最近记录: |