首页 > 网站 > WEB开发 > 正文

Js屏蔽键盘输入的某些字符,用以部分代替正则表达式

2024-04-27 14:10:19
字体:
来源:转载
供稿:网友

Js屏蔽键盘输入的某些字符,用以部分代替正则表达式

工作当中用到的:有是,用户会在文本框里输入一些无效的(错误的)内容,比如在手机号中输入#等等,一般使用正则表达式,但是只有点击的时候才会验证,用户体验不好,所以想屏蔽这些按键,让键盘根本打不出来,以下是代码(不是完全原创,参考了网上的一些例子)

代码:

 1 input.keydown(function (evt) { 2                     evt.stopPRopagation(); 3                     if ( 4                         // Allow: backspace, delete, tab, escape, enter and . 5                         $.inArray(evt.keyCode, [46, 8, 9, 27]) !== -1 || 6                         // Allow: Ctrl+A 7                         (evt.keyCode === 65 && evt.ctrlKey === true) || 8                         // Allow: home, end, left, right 9                         (evt.keyCode >= 35 && evt.keyCode <= 39)) {10                         // let it happen, don't do anything11                         return;12                     } else if (evt.shiftKey || (evt.keyCode < 48 || evt.keyCode > 57) && (evt.keyCode < 96 || evt.keyCode > 105)) {13                         if (evt.keyCode == 13) {14                             if (/^[0-9]*[1-9][0-9]*$/.exec(input.val()) && parseInt(input.val()) <= parseInt(pageCountEle.val())) {15                                 pageNoEle.val(input.val());16                                 jsMethodName();17                             } else {18                                 alert("Please input a valid number!");19                                 input.focus();20                                 return false;21                             }22                         }23                         evt.preventDefault();24                     }25                 });


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表