怎么限制input的text里输入的值只能是数字(正则、js)
当我们在一些网站注册账号、填写信息是,不小心将电话号码填写成汉字或其他英文字母了,这显然是不正确的。为了帮助用户更好地纠正输入时的错误,在表单中填写信息时,需要限制手机号、邮编、电话号码这类文本框不能输入其他字符,只能是数字。
通过使用正则匹配输入的时候只是数字:
var numRegex = /\D/g
再通过JavaScript的onblur 事件:
定义和用法
onblur 事件会在对象失去焦点时发生。
Onblur 经常用于Javascript验证代码,一般用于表单输入框
语法
HTML 中:
<element onblur="SomeJavaScriptCode">
JavaScript 中:
object.onblur= function(){ //操作 myScript; }
JavaScript 中, 使用 addEventListener() 方法:
object.addEventListener('blur',myScript);
最终DEMO代码:
var numRegexFn = function(obj){ obj.value = obj.value.replace(numRegex,''); if(!obj.value){ alert('请输入数字'); }else{ alert('pass'); } } phone.onblur = function(){ numRegexFn(this); }
以上所述是小编给大家介绍的使用正则表达式和js限制只能输入数字的相关内容,希望对大家有所帮助,也希望大家多多的关注我们网站!
相关推荐
-
JavaScript基于正则表达式的数字判断函数
1.下面列出了一些判读数值类型的正则表达式 复制代码 代码如下: "^\\d+$" //非负整数(正整数 + 0) "^[0-9]*[1-9][0-9]*$" //正整数 "^((-\\d+)|(0+))$" //非正整数(负整数 + 0) "^-[0-9]*[1-9][0-9]*$" //负整数 "^-?\\d+$" //整数 "^\\d+(\\.\\d+)?$" //非负浮点数(正浮
-
JS正则表达式匹配检测各种数值类型(数字验证)
验证数字的正则表达式集 验证数字:^[0-9]*$ 验证n位的数字:^\d{n}$ 验证至少n位数字:^\d{n,}$ 验证m-n位的数字:^\d{m,n}$ 验证零和非零开头的数字:^(0|[1-9][0-9]*)$ 验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$ 验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$ 验证非零的正整数:^\+?[1-9][0-9]*$ 验证非零的负整数:^\-[1-9][0-9]*$ 验证非负整数(正整数 + 0) ^\d
-
js正则表达式匹配数字字母下划线等
1.一个正则表达式,只含有汉字.数字.字母.下划线不能以下划线开头和结尾: ^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$ 其中: ^ 与字符串开始的地方匹配 (?!_) 不能以_开头 (?!.*?_$) 不能以_结尾 [a-zA-Z0-9_\u4e00-\u9fa5]+ 至少一个汉字.数字.字母.下划线 $ 与字符串结束的地方匹配 放在程序里前面加@,否则需要\\进行转义 @"^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]
-
js限制文本框只能输入数字(正则表达式)
好了,言归正传.话说我在网上找了很多限制文本框的办法都不尽人意,于是只好自己动手实践了,实践出真知嘛,这句话没错的. 复制代码 代码如下: function chkPrice(obj){ obj.value = obj.value.replace(/[^\d.]/g,""); //必须保证第一位为数字而不是. obj.value = obj.value.replace(/^\./g,""); //保证只有出现一个.而没有多个. obj.value = obj.val
-
js中使用正则表达式查找字母和数字的方法
废话不多说,先看下js中使用正则查找字母和数字的方法,具体代码如下所示: <!DOCTYPE HTML> <html > <head> <meta charset="UTF-8"> <title></title> <script type="text/javascript"> window.onload=function(){ localStorage.fiveData="
-
js中判断数字\字母\中文的正则表达式 (实例)
/* 判断指定的内容是否为空,若为空则弹出 警告框 */ function isEmpty(theValue, strMsg){ if(theValue==""){ alert(strMsg+"不能为空!"); return true; } return false; } /* 中文判断函数,允许生僻字用英文"*"代替 返回true表示是符合条件,返回false表示不符合 */ function isChinese(str){ var badCh
-
js正则表达式实现数字每隔四位用空格分隔代码
数字每隔四位用空格分隔代码实例: 分享一段代码实例,它实现了数字每隔四位就用空格分隔. 这样的效果在填写银行卡的时候十分常见,这也是非常人性化的举措. 代码实例如下: <!doctype html> <html> <head> <meta charset="utf-8"> <title>我们</title> <script src="http://libs.baidu.com/jquery/1.9.
-
JS正则表达式验证数字代码
复制代码 代码如下: <script type="text/javascript"> function validate(){ var reg = new RegExp("^[0-9]*$"); var obj = document.getElementById("name"); if(!reg.test(obj.value)){ alert("请输入数字!");
-
Javascript 正则表达式实现为数字添加千位分隔符
最近在网上有看到使用js来实现数字的千位分隔符的面试(笔试)题,所以就自己写了一个利用"正则+replace"来实现的方法: 复制代码 代码如下: var thousandBitSeparator = function(numStr){ var b = /([-+]?\d{3})(?=\d)/g; return numStr.replace(b, function($0, $1){ return $1 + ','; }); } 支持正负
-
javascript 数字的正则表达式集合
说明:IE6.0.IE7.0.IE8.0.Firefox/3.0.11下测试通过 验证数字最简单正则表达式大全 输入完按回车后即可验证!(自认为最简单!) 正整数: 负整数: 整 数: 正小数: 负小数: 小 数: 实 数: 保留1位小数: 保留2位小数: 保留3位小数: [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
-
JS基于正则实现数字千分位用逗号分隔的方法
本文实例讲述了JS基于正则实现数字千分位用逗号分隔的方法.分享给大家供大家参考,具体如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>js千分位逗号隔开</title> </head> <body> <script > var a = 222122122.6754
随机推荐
- vbs判断磁盘类型和检测硬盘剩余空间的实现代码
- Android简单实现启动画面的方法
- 关于Linux反空闲设置的两种方法总结
- 老生常谈java垃圾回收算法(必看篇)
- Java使用jxl包写Excel文件适合列宽实现
- web.config使用方法指南
- Javascript中内建函数reduce的应用详解
- 在C#及.NET框架中使用StringBuilder类操作字符串的技巧
- asp.net 组件开发中的内嵌资源引用
- php数组中删除元素之重新索引的方法
- python实现文件快照加密保护的方法
- jdbc操作mysql数据库实例
- JS中的hasOwnProperty()和isPrototypeOf()属性实例详解
- SQLSERVER的版本信息和SP补丁信息查看方法
- jQuery:delegate中select()不起作用的解决方法(实例讲解)
- 转换json格式的日期为Javascript对象的函数
- jQuery多级联动下拉插件chained用法示例
- async和DOM Script文件加载比较
- 一个用来统计相同姓名人数的SQl语句
- 30秒轻松实现TensorFlow物体检测