js 手机号码合法性验证代码集合


Posted in Javascript onSeptember 29, 2012

第一个代码:

function Checkreg() 
{ 
//验证电话号码手机号码,包含153,159号段 
if (document.form.phone.value=="" && document.form.UserMobile.value==""){ 
alert("电话号码和手机号码至少选填一个阿!"); 
document.form.phone.focus(); 
return false; 
} 
if (document.form.phone.value != ""){ 
var phone=document.form.phone.value; 
var p1 = /^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/; 
var me = false; 
if (p1.test(phone))me=true; 
if (!me){ 
document.form.phone.value=''; 
alert('对不起,您输入的电话号码有错误。区号和电话号码之间请用-分割'); 
document.form.phone.focus(); 
return false; 
} 
} 
if (document.form.UserMobile.value != ""){ 
var mobile=document.form.UserMobile.value; 
var reg0 = /^13\d{5,9}$/; 
var reg1 = /^153\d{4,8}$/; 
var reg2 = /^159\d{4,8}$/; 
var reg3 = /^0\d{10,11}$/; 
var my = false; 
if (reg0.test(mobile))my=true; 
if (reg1.test(mobile))my=true; 
if (reg2.test(mobile))my=true; 
if (reg3.test(mobile))my=true; 
if (!my){ 
document.form.UserMobile.value=''; 
alert('对不起,您输入的手机或小灵通号码有错误。'); 
document.form.UserMobile.focus(); 
return false; 
} 
return true; 
} 
}

说明
test方法检查在字符串中是否存在一个模式,如果存在则返回 true,否则就返回 false。

正则表达式部分:
\d 代表一个数字
{7,8} 代表7-8位数字(表示电话号码)
{3,} 代表分机号码
d{2,3} 代表区号
\+]\d{2,3} 代表国际区号
^13\d{5,9}$/ //130?139。至少5位,最多9位
/^153\d{4,8}$/ //联通153。至少4位,最多8位
/^159\d{4,8}$/ //移动159。至少4位,最多8位

第二个:

var Mobile = $("#varMobilePhone").val(); 
var Phone = $("#varPhoneNo").val(); 
if (Mobile == ""&&Phone == "") 
{ 
alert("手机和固话,请至少填写一项联系方式!"); 
$("#varMobilePhone").focus(); 
return; 
} 
if(Mobile!="") 
{ 
if(!isMobil(Mobile)) 
{ 
alert("请输入正确的手机号码!"); 
$("#varMobilePhone").focus(); 
return; } 
} 
//手机号码验证信息 
function isMobil(s) 
{ 
var patrn = /(^0{0,1}1[3|4|5|6|7|8|9][0-9]{9}$)/; 
if (!patrn.exec(s)) 
{ 
return false; 
} return true; } 
后台验证如下: 
if (model.Zip != null) 
{ 
if (!Common.PageValidate.IsValidate(model.Zip,"^\\d{6}$")) 
{ Common.WebMessage.showMsg(HttpContext.Current, "请输入正确邮编"); 
return; 
} 
} 
if (model.PhoneNo != null) 
{ 
if (!Common.PageValidate.IsValidate(model.PhoneNo, "\\d{3}-\\d{8}|\\d{4}-\\d{7}")) 
{ 
Common.WebMessage.showMsg(HttpContext.Current, "请输入正确的电话号码!"); 
return; 
} 
} 
if (model.MobilePhone != null) 
{ 
if (!Common.PageValidate.IsValidate(model.MobilePhone, "^0{0,1}(13[0-9]|15[3-9]|15[0-2]|18[0-9])[0-9]{8}$")) 
{ 
Common.WebMessage.showMsg(HttpContext.Current, "请输入正确11位有效的手机号码!"); 
return; 
} 
}
Javascript 相关文章推荐
javascript表单验证 - Parsley.js使用和配置
Jan 25 Javascript
js动态创建表格,删除行列的小例子
Jul 20 Javascript
jquery()函数的三种语法介绍
Oct 09 Javascript
js和jquery使按钮失效为不可用状态的方法
Jan 26 Javascript
JQuery实现表格动态增加行并对新行添加事件
Jul 30 Javascript
详解angular中通过$location获取路径(参数)的写法
Mar 21 Javascript
关于Vue单页面骨架屏实践记录
Dec 13 Javascript
Node.js实现mysql连接池使用事务自动回收连接的方法示例
Feb 03 Javascript
vue实现后台管理权限系统及顶栏三级菜单显示功能
Jun 19 Javascript
微信小程序从注册账号到上架(图文详解)
Jul 17 Javascript
Vue实现点击当前行变色
Dec 14 Vue.js
JS实现刷新网页后之前浏览位置保持不变示例详解
Aug 14 Javascript
JavaScript模板入门介绍
Sep 26 #Javascript
JavaScript快速检测浏览器对CSS3特性的支持情况
Sep 26 #Javascript
JavaScript 参数中的数组展开 [译]
Sep 21 #Javascript
JavaScript中将一个值转换为字符串的方法分析[译]
Sep 21 #Javascript
使用apply方法处理数组的三个技巧[译]
Sep 20 #Javascript
js DOM 元素ID就是全局变量
Sep 20 #Javascript
JavaScript NaN和Infinity特殊值 [译]
Sep 20 #Javascript
You might like
PHP实现获取文件后缀名的几种常用方法
2015/08/08 PHP
php上传图片类及用法示例
2016/05/11 PHP
php+flash+jQuery多图片上传源码分享
2020/07/27 PHP
PHP控制前台弹出对话框的实现方法
2016/08/21 PHP
实例讲解php实现多线程
2019/01/27 PHP
Yii框架通过请求组件处理get,post请求的方法分析
2019/09/03 PHP
jQuery动画animate方法使用介绍
2013/05/06 Javascript
jQuery实现的超酷苹果风格图标滑出菜单效果代码
2015/09/16 Javascript
AngularJS实现元素显示和隐藏的几个案例
2015/12/09 Javascript
javascript仿京东导航左侧分类导航下拉菜单效果
2020/11/25 Javascript
用iframe实现不刷新整个页面上传图片的实例
2016/11/18 Javascript
深入理解Angularjs向指令传递数据双向绑定机制
2016/12/31 Javascript
js实现时间轴自动排列效果
2017/03/09 Javascript
javascript实现日期三级联动下拉框选择菜单
2020/12/03 Javascript
IScroll那些事_当内容不足时下拉刷新的解决方法
2017/07/18 Javascript
JavaScript实现图片本地预览功能【不用上传至服务器】
2017/09/20 Javascript
js 两数组去除重复数值的实例
2017/12/06 Javascript
封装微信小程序http拦截器过程解析
2019/08/13 Javascript
微信小程序以ssm做后台开发的实现示例
2020/04/08 Javascript
解决idea开发遇到javascript动态添加html元素时中文乱码的问题
2020/09/29 Javascript
[01:34:42]NAVI vs EG 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
Python编写电话薄实现增删改查功能
2016/05/07 Python
python中星号变量的几种特殊用法
2016/09/07 Python
python操作 hbase 数据的方法
2016/12/18 Python
python实现按任意键继续执行程序
2016/12/30 Python
Python内置模块hashlib、hmac与uuid用法分析
2018/02/12 Python
Ubuntu16.04/树莓派Python3+opencv配置教程(分享)
2018/04/02 Python
HTML里显示pdf、word、xls、ppt的方法示例
2020/04/14 HTML / CSS
蛋白质世界:Protein World
2017/11/23 全球购物
蔻驰西班牙官网:COACH西班牙
2019/01/16 全球购物
Java中compareTo和compare的区别
2016/04/12 面试题
清明节演讲稿
2014/05/27 职场文书
2014年团员学习十八大思想汇报
2014/09/13 职场文书
如何写一份成功的商业计划书
2019/06/25 职场文书
如何理解python接口自动化之logging日志模块
2021/06/15 Python
java代码实现空间切割
2022/01/18 Java/Android