2

textbox在将文本发送给第三方进行操作之前,我需要验证输入到使用 JavaScript 中的文本。

为此,我使用browserEvent.keyCode参数keycode将按键事件发送到浏览器,然后验证代码以说明它是否允许textbox

这适用于我测试过的所有设备,除了 HTC One X 上的 Chrome。

我发现各种 Android 和 iOS 设备之间存在令人讨厌的差异,但它们都返回了我可以使用的东西。然而,HTC One X0会随着每次按键而返回,除了BackspaceEnter键,它们分别返回813

我已经尝试过event.keyCode,event.charCode以及event.which,和代码,并且所有内容都browserEvent.keyCode以.browserEvent.charCodebrowserEvent.which0

基本上,我被困住了。有谁有想法吗

  1. 为什么keycode总是0在这个设备上返回,以及
  2. 我怎么能检测到keycode
4

1 回答 1

0

虽然它没有回答直接的问题,但我使用了 Lukas Knuth 给我的一些想法来解决它。

现在的过程是 0 的键码被捕获并传递给一个函数,该函数通过一些正则表达式验证运行输入框的内容。如果验证失败,则从输入框中删除最后一个字符。

如果有人遇到这个问题,希望为 HTC One X 提供通过 0 作为键码的解决方案,我深表歉意,经过几天的研究和实验,我找不到解决方案,所以我转而解决了这个问题。

于 2013-03-05T11:29:12.723 回答