html5中文学习网

您的位置: 首页 > 网站及特效实例 > javascript特效 » 正文

输入框过滤非数字的js代码_javascript技巧_

[ ] 已经帮助:人解决问题

HTML:sBTHTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
sBTHTML5中文学习网 - HTML5先行者学习网
<input type="text" id="only"/>sBTHTML5中文学习网 - HTML5先行者学习网
sBTHTML5中文学习网 - HTML5先行者学习网

JS:sBTHTML5中文学习网 - HTML5先行者学习网
sBTHTML5中文学习网 - HTML5先行者学习网

window.onload=function(e){var text=document.getElementById("only"),pattern=//d/,//pattern匹配字母上的数字键pattern2=/(9[6-9])|(10[0-5])|3(7|9)/,//pattern2匹配小键盘上的数字键和左右方向键EventHandle={},event=e||window.event;//一个处理事件的对象      //当网页加载的时候,进行判断,对事件处理对象进行定义属性,这样对事件对象的方法只需要进行一次判断,以后的其他事件      //处理程序里面不需要判断if(event.preventDefault){EventHandle.preventDefault=function(e){e.preventDefault();};}else{EventHandle.preventDefault=function(e){e.returnValue=false;}}text.onkeydown=function(e){var event=e||window.event;//不同事件的事件对象不一样,这个event和最前面的event不相等if(!pattern.test(String.fromCharCode(event.keyCode))&&event.keyCode!=8//keyCode=8是退格键,因为可以对输入的数字进行修改,所以退格和左右方向键不禁止&&!pattern2.test(event.keyCode.toString())||event.shiftKey||event.ctrlKey||event.metaKey){EventHandle.preventDefault(event);//如果不用对象的这个方法,写成下面这样,也可以执行,不过每次按下键盘的时候都会进行一次判断                               //这个是没有必要的,所以在页面加载的时候对事件处理对象定义一个方法,加载后对象的方法就已经是确定的了,以后时候就可以了                                //if(event.preventDefault){                                //event.preventDefault();                                //}else{                                //event.returnValue=false;                                //}}}}

未注释版本:sBTHTML5中文学习网 - HTML5先行者学习网
sBTHTML5中文学习网 - HTML5先行者学习网

window.onload=function(e){var text=document.getElementById("only"),pattern=//d/,pattern2=/(9[6-9])|(10[0-5])|3(7|9)/,EventHandle={},event=e||window.event;if(event.preventDefault){EventHandle.preventDefault=function(e){e.preventDefault();};}else{EventHandle.preventDefault=function(e){e.returnValue=false;}}text.onkeydown=function(e){var event=e||window.event;if(!pattern.test(String.fromCharCode(event.keyCode))&&event.keyCode!=8&&!pattern2.test(event.keyCode.toString())||event.shiftKey||event.ctrlKey||event.metaKey){EventHandle.preventDefault(event);}}}

在IE11里面,F12打开开发者工具里面可以选择IE版本进行调试sBTHTML5中文学习网 - HTML5先行者学习网

sBTHTML5中文学习网 - HTML5先行者学习网

(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助