Javascript 如何从键代码中获取字符串/字符值;

Javascript 如何从键代码中获取字符串/字符值;,javascript,html,keyboard,Javascript,Html,Keyboard,我使用的是html的输入标签,它的工作原理应该类似于google搜索的输入。 我想将数据发送到服务器,以检测是否存在以该子字符串开头的任何标记。 我想将keyPress event中的字符/字符串(这里使用的哪个)添加到文本中现有的输入中。 在上面的代码中,我使用了String.fromCharCode。当我按下“b”键时,我发现键码为0,String.fromCharCode(event.keyCode)的值为零;两者都不是空白。 对此有任何修复吗?它可能与跨不同浏览器支持.keyCo

我使用的是html的输入标签,它的工作原理应该类似于google搜索的输入。

我想将数据发送到服务器,以检测是否存在以该子字符串开头的任何标记。
我想将keyPress event中的字符/字符串(这里使用的哪个)添加到文本中现有的输入中。

在上面的代码中,我使用了String.fromCharCode。当我按下“b”键时,我发现键码为0,String.fromCharCode(event.keyCode)的值为零;两者都不是空白。

对此有任何修复吗?

它可能与跨不同浏览器支持
.keyCode
属性有关。规范化keyCode值以获得更好的结果。一种方法(括号中的部分来自jQuery源代码):

您可以尝试:

String.fromCharCode(event.which); // it works in all major browsers

“当我按下“b”键时,我发现键盘代码为0”-请在JSFIDDLE上重现这一点,这对不是您想要的布局的键盘不是没有用吗?显然,在
keyCode
s和
charCode
s之间没有通用映射。请参阅@WTK的答案。
// e.g.
String.fromCharCode(event.charCode != null ? event.charCode : event.keyCode);
String.fromCharCode(event.which); // it works in all major browsers