AEM*_*iji 40 javascript jquery
我按键盘上的键时会得到代码[96..105] [0..9]
这些代码对应于字符:'abcdefgh i' 而不是[0..9],同时试图用这种方式获取代码String.fromCharCode(event.keyCode).
题:
我在表单中有3个输入.用户只允许输入第一个输入.当用户按下键盘上的键时,如果按下键是数字,则某些功能需要对其进行过滤并将其写入第二个输入,否则必须将其写入第二个输入.如何纠正?请参阅下面的链接,因为它描述了我实施的所有流程和代码
Koo*_*Inc 62
使用keypress处理程序:
[somelement].onkeypress = function(e){
e = e || event;
console.log(String.fromCharCode(e.keyCode));
}
Run Code Online (Sandbox Code Playgroud)
另请参见:此W3C测试文档
如果你想使用keyup或keydown处理程序,你可以从中减去48 e.keyCode得到数字(所以String.fromCharCode(e.keyCode-48))
Sac*_*San 11
我使用以下javascript代码修复了该问题.小键盘键位于96到105之间.但实际数字小于小键盘值48.与keyup或keydown处理程序一起使用.
var keyCode = e.keyCode || e.which;
if (keyCode >= 96 && keyCode <= 105) {
// Numpad keys
keyCode -= 48;
}
var number = String.fromCharCode(keyCode);
Run Code Online (Sandbox Code Playgroud)