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 相关文章推荐
js onkeypress与onkeydown 事件区别详细说明
Dec 13 Javascript
document.getElementById获取控件对象为空的解决方法
Nov 20 Javascript
一段非常简单的js判断浏览器的内核
Aug 17 Javascript
jQuery插件boxScroll实现图片轮播特效
Jul 14 Javascript
JS实现图片平面旋转的方法
Mar 01 Javascript
JavaScript中的数组遍历forEach()与map()方法以及兼容写法介绍
May 19 Javascript
Bootstrap开发实战之响应式轮播图
Jun 02 Javascript
jQuery实现简单倒计时功能的方法
Jul 04 Javascript
mvc 、bootstrap 结合分布式图简单实现分页
Oct 10 Javascript
JavaScript代码执行的先后顺序问题
Oct 29 Javascript
JS无限级导航菜单实现方法
Jan 05 Javascript
js实现飞机大战游戏
Aug 26 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
德生PL450的电路分析和低放电路的改进办法
2021/03/02 无线电
php使用COPY函数更新配置文件的方法
2015/06/18 PHP
PHPStudy下如何为Apache安装SSL证书的方法步骤
2019/01/23 PHP
数理公式,也可以这么唯美
2021/03/10 无线电
Extjs Ajax 乱码问题解决方案
2009/04/15 Javascript
js 链式延迟执行DOME
2012/01/04 Javascript
Javascript代码在页面加载时的执行顺序介绍
2013/05/03 Javascript
JavaScript匿名函数与委托使用示例
2014/07/22 Javascript
[将免费进行到底]在Amazon的一年免费服务器上安装Node.JS, NPM和OurJS博客
2014/08/18 Javascript
js与css实现弹出层覆盖整个页面的方法
2014/12/13 Javascript
JavaScript插件化开发教程 (三)
2015/01/27 Javascript
JS获取网页图片name属性的方法
2015/04/01 Javascript
js 右侧浮动层效果实现代码(跟随滚动)
2015/11/22 Javascript
基于jquery实现日历签到功能
2020/09/11 Javascript
Laydate时间组件在火狐浏览器下有多时间输入框时只能给第一个输入框赋值的解决方法
2016/08/18 Javascript
实例分析nodejs模块xml2js解析xml过程中遇到的坑
2017/03/18 NodeJs
vue移动端下拉刷新和上拉加载的实现代码
2018/09/08 Javascript
layui下拉框获取下拉值(select)的例子
2019/09/10 Javascript
微信小程序中限制激励式视频广告位显示次数(实现思路)
2019/12/06 Javascript
vue实现列表滚动的过渡动画
2020/06/29 Javascript
python库lxml在linux和WIN系统下的安装
2018/06/24 Python
如何利用Boost.Python实现Python C/C++混合编程详解
2018/11/08 Python
pytorch下大型数据集(大型图片)的导入方式
2020/01/08 Python
利用PyQt中的QThread类实现多线程
2020/02/18 Python
python实现图书馆抢座(自动预约)功能的示例代码
2020/09/29 Python
Boden英国官网:英国知名原创时装品牌
2018/11/06 全球购物
YSL圣罗兰美妆英国官网:Yves Saint Laurent Beauty UK
2019/08/03 全球购物
十八届三中全会宣传方案
2014/02/21 职场文书
小学生学习雷锋倡议书
2014/05/15 职场文书
2015年禁毒工作总结
2015/04/30 职场文书
车间班组长竞聘书
2015/09/15 职场文书
事业单位工作人员岗前培训心得体会
2016/01/08 职场文书
初中思品教学反思
2016/02/20 职场文书
python实现过滤敏感词
2021/05/08 Python
css实现左上角飘带效果的完整代码
2022/03/18 HTML / CSS
SpringCloud中分析讲解Feign组件添加请求头有哪些坑梳理
2022/06/21 Java/Android