js限制文本框只能输入数字(正则表达式)
好了,言归正传。话说我在网上找了很多限制文本框的办法都不尽人意,于是只好自己动手实践了,实践出真知嘛,这句话没错的。
代码如下:
function chkPrice(obj){
obj.value = obj.value.replace(/[^\d.]/g,"");
//必须保证第一位为数字而不是.
obj.value = obj.value.replace(/^\./g,"");
//保证只有出现一个.而没有多个.
obj.value = obj.value.replace(/\.{2,}/g,".");
//保证.只出现一次,而不能出现两次以上
obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
}
function chkLast(obj){
// 如果出现非法字符就截取掉
if(obj.value.substr((obj.value.length - 1), 1) == '.')
obj.value = obj.value.substr(0,(obj.value.length - 1));
}
<input type="text" name="txtFee" id="txtFee" class="common" onkeyup="chkPrice(this);" onblur="chkLast(this)" onpaste="javascript: return false;"/>
最后这个:onpaste="javascript: return false;" 的目的是禁用鼠标右键的“粘贴”菜单,可以防止鼠标右键或者Ctrl + V粘贴不合法的数据,嘿嘿。
上面这段JS我只在IE8环境测试过,如果各位看官有什么想法或者疑问,请留言。
相关推荐
-
javascript验证只能输入数字和一个小数点示例
复制代码 代码如下: function gaga(obj){ // 值允许输入一个小数点和数字 obj.value = obj.value.replace(/[^\d.]/g,""); //先把非数字的都替换掉,除了数字和. obj.value = obj.value.replace(/^\./g,""); //必须保证第一个为数字而不是. obj.value = obj.value.replace(/\.{2,}/g,"."); //保证只有出
-
js 只能输入数字和小数点的文本框改进版
1.鼠标左右移动的时候. 2.最后一个不能是小数点. js 只能输入数字和小数点 //by ahuinan 2009-4-10 function clearNoNum(event,obj){ //响应鼠标事件,允许左右方向键移动 event = window.event||event; if(event.keyCode == 37 | event.keyCode == 39){ return; } //先把非数字的都替换掉,除了数字和. obj.value = obj.value.replace
-
纯JS实现只能输入数字的简单代码
只能输入数字 <!DOCTYPE html> <html lang="en"> <head> <title></title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link href=&quo
-
js 限制input只能输入数字、字母和汉字等等
复制代码 代码如下: <input type="text"onKeyUp="this.value=this.value.replace(/[^\.\d]/g,'');if(this.value.split('.').length>2){this.value=this.value.split('.')[0]+'.'+this.value.split('.')[1]}"> 1.文本框只能输入数字代码(小数点也不能输入) 复制代码 代码如下: <i
-
js禁止小键盘输入数字功能代码
复制代码 代码如下: function isNum()//判断小键盘输入数字 { var str=(window.event.keyCode); if(str>105 || str<96 ) { if (str!=8 ) { window.event.returnValue=false; return; } } } function isNumUp()//判断主键盘输入数字 { var str=(window.event.keyCode); if(str>57 || str<48
-
js限制文本框只能输入数字方法小结
有时需要限制文本框输入内容的类型,本节分享下正则表达式限制文本框只能输入数字.小数点.英文字母.汉字等代码. 例如,输入大于0的正整数 复制代码 代码如下: <input onkeyup="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}" onafterpaste="if(this.valu
-
JS只能输入数字或数字和字母等的正则表达式
JS判断只能是数字和小数点 0.不能输入中文 1)<input onpaste="return false;" type="text" name="textfield" style="width:400px; ime-mode:disabled" value=""> 2) 复制代码 代码如下: <script> function chkIt(frm){ if (frm.n1.valu
-
『JavaScript』限制Input只能输入数字实现思路及代码
这玩意很多人写过,但是今天临时要用的时候找不到符合需求的,所以立马来写一个,既然都写完了而且还满符合需求的就放上来让大家鞭一鞭. 需求很简单,一个文字方块必须限制只能输入数字(或是小数点)并且要支援 IE 和 Firefox. HTML的 Input 是这样下滴 复制代码 代码如下: <input type="text" style="ime-mode:disabled" onkeyup="return ValidateNumber($(this),
-
解析使用js判断只能输入数字、字母等验证的方法(总结)
JS判断只能是数字和小数点0.不能输入中文1)<input onpaste="return false;" type="text" name="textfield" style="width:400px; ime-mode:disabled" value="">2)<script>function chkIt(frm){if (frm.n1.value.length>0&
-
js实现文本框只允许输入数字并限制数字大小的方法
本文实例讲述了js实现文本框只允许输入数字并限制数字大小的方法.分享给大家供大家参考.具体如下: 这是一个很个性的输入框特效,规定文本框只允许输入数字,如果你执意要输入其它的字符,则输入的字符将自动消失,除非你输入的是规定内的字符格式,并且对输入数字大小也有限制!为保证兼容性,请使用火狐浏览器. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-input-limit-num-codes/ 具体代码如下: <!DOCTYPE html PUB
-
js控制文本框只输入数字和小数点的方法
本文实例讲述了js控制文本框只输入数字和小数点的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: function clearNoNum(obj) { obj.value = obj.value.replace(/[^\d.]/g, "");//清除"数字"和"."以外的字符 obj.value = obj.value.replace(/^\./g, "");//验证第一个字符是数字而不是. obj.
随机推荐
- 学会批处理,用心学很容易!另一不错的见解第1/3页
- Sql 语句学习指南第1/2页
- HttpUtils 发送http请求工具类(实例讲解)
- asp.net 实现动态显示当前时间(不用javascript不考虑开销)
- php 判断网页是否是utf8编码的方法
- PHP实现合并discuz用户
- 淘特ASP木马扫描器的代码
- jsp 网站引入外部css或者js失效问题解决
- 检查linux网络状态的两个脚本
- 优化Jquery,提升网页加载速度
- jquery选择checked在ie8普通模式下的问题
- 用FDISK进行硬盘分区 图文教程
- java 反射 动态调用不同类的静态方法(推荐)
- ThinkPHP中where()使用方法详解
- vue.js项目打包上线的图文教程
- Spring Boot应用监控的实战教程
- Java动态代理和反射机制详解
- springboot整合docker部署实现两种构建Docker镜像方式
- nodejs log4js 使用详解
- ZABBIX3.2使用python脚本实现监控报表的方法