Javascript 识别没有kycode的特殊密钥字符

Javascript 识别没有kycode的特殊密钥字符,javascript,jquery,Javascript,Jquery,例如,如果您点击backspace,控制台将显示keyVal的空字符串,但这会产生误导,因为keyVal.length等于1,并且有一个隐藏字符 element.on('keydown',function(e){ var keyVal = String.fromCharCode(e.keyCode); }); 有可能检测到这些没有输入值的特殊键吗?可能没有列出和检查他们的密钥代码。或者至少是一种有效的方法,可以降低省略任何键的风险。您可以在字符串上添加正则表达式。fromCharCode

例如,如果您点击backspace,控制台将显示
keyVal
的空字符串,但这会产生误导,因为
keyVal.length
等于1,并且有一个隐藏字符

element.on('keydown',function(e){
   var keyVal = String.fromCharCode(e.keyCode);
});

有可能检测到这些没有输入值的特殊键吗?可能没有列出和检查他们的密钥代码。或者至少是一种有效的方法,可以降低省略任何键的风险。

您可以在
字符串上添加正则表达式。fromCharCode(e.keyCode)


这将替换任何字符,而不是数字、字母或空格

谢谢您的帮助。一般来说,它显示了良好的结果,但不幸的是,它失败了,一些字符,如
`
~
,它们不输入值。它可能还有其他utf-8。可以将事件与属性结合使用。尽管现在后者即将被弃用,但大多数浏览器仍然支持它。如果按键可打印,则返回按键的Unicode值。请注意,在Webkit浏览器中,如果按下的键不可打印,则不会触发按键。
element.on('keydown',function(e){
   var keyVal = String.fromCharCode(e.keyCode).replace(/[^\w\s\d]/g,'');
});