我正在使用keydown事件
我在哪里获得密码并将其转换为charcode.
但我遇到了一个问题,在键盘按下2它给50和charcode为2
当我在numpad中按2时它给出了键码98,所以当我转换charcode a时
解决方法
这是因为你正在使用keyCode成员,例如,小写’a’和大写’A’具有相同的keyCode,因为是相同的键,但是不同的charCode,因为结果字符是不同的.
要获取charCode,您应该使用keypress事件,并获取event.charCode成员(如果可用),否则,您将获得event.keyCode,对于IE,在keypress事件上具有正确的信息.
看看下面的example:
document.onkeypress = function (e) { e = e || window.event; var charCode = e.charCode || e.keyCode,character = String.fromCharCode(charCode); alert(character); };