今日在看JavaScript的时候,发现键盘响应时间onkeydown和一些其他的相关事件都停用了keyCode这个属性,而keyCode这个属性返回的是键盘按键的ASCII码值,停用后有个code属性替代,但也不完全替代,因为code属性返回的是键值本身的值,所以写法也不一样,下面用正则表达式来禁止输入框输入数字,直接上代码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>1609</title> <script> window.onload = function(){ var inp = document.getElementsByTagName("input")[0]; inp.onkeydown = function(e){ if(/\d/.test(e.code)){ return false; } console.log(e.code); }; }; </script> </head> <body> <input type="text" id="1" /> </body> </html>
JavaScript中正则表达式的test()方法返回一个bool值,就是文本是否匹配表达式
而使用keyCode写法如下
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>1609</title> <script> window.onload = function(){ var inp = document.getElementsByTagName("input")[0]; inp.onkeydown = function(e){ if(e.keyCode >= 48 && e.keyCode <= 57)){ return false; } console.log(e.code); }; }; </script> </head> <body> <input type="text" id="1" /> </body> </html>
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)