js结合正则实现国内手机号段校验


Posted in Javascript onJune 19, 2015

附加一个utils对象,内含一个校验手机号函数,一个格式化返回数据函数

var isChinaMobile = /^134[0-8]\d{7}$|^(?:13[5-9]|147|15[0-27-9]|178|18[2-478])\d{8}$/; //移动方面最新答复
var isChinaUnion = /^(?:13[0-2]|145|15[56]|176|18[56])\d{8}$/; //向联通微博确认并未回复
var isChinaTelcom = /^(?:133|153|177|18[019])\d{8}$/; //1349号段 电信方面没给出答复,视作不存在
var isOtherTelphone  = /^170([059])\d{7}$/;//其他运营商
 
var utils = {
  checkMobile: function(telphone){
    telphone = this.trim(telphone);
    if(telphone.length !== 11){
      return this.setReturnJson(false, '未检测到正确的手机号码');
    }
    else{
      if(isChinaMobile.test(telphone)){
        return this.setReturnJson(true, '移动', {name: 'ChinaMobile'});
      }
      else if(isChinaUnion.test(telphone)){
        return this.setReturnJson(true, '联通', {name: 'ChinaUnion'});
      }
      else if(isChinaTelcom.test(telphone)){
        return this.setReturnJson(true, '电信', {name: 'ChinaTelcom'});
      }
      else if(isOtherTelphone.test(telphone)){
        var num = isOtherTelphone.exec(telphone);
        return this.setReturnJson(true, '', {name: ''});
      }
      else{
        return this.setReturnJson(false, '未检测到正确的手机号码');
      }
    }
  },
  setReturnJson: function(status, msg, data){
    if(typeof status !== 'boolean' && typeof status !== 'number'){
      status = false;
    }
    if(typeof msg !== 'string'){
      msg = '';
    }
    return {
      'status': status,
      'msg': msg,
      'data': data
    };
  }
}

验证130-139,150-159,180-189号码段的手机号码

<script type="text/javascript">
var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/; 
if(!myreg.test($("#phone").val())) 
{ 
  alert('请输入有效的手机号码!'); 
  return false; 
} 
</script>

以上代码是在jquery下调试的。

不需要jquery的代码

function validatemobile(mobile) 
  { 
    if(mobile.length==0) 
    { 
     alert('请输入手机号码!'); 
     document.form1.mobile.focus(); 
     return false; 
    }   
    if(mobile.length!=11) 
    { 
      alert('请输入有效的手机号码!'); 
      document.form1.mobile.focus(); 
      return false; 
    } 
    
    var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/; 
    if(!myreg.test(mobile)) 
    { 
      alert('请输入有效的手机号码!'); 
      document.form1.mobile.focus(); 
      return false; 
    } 
  }

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
js实时获取系统当前时间实例代码
Jun 28 Javascript
javascript版的in_array函数(判断数组中是否存在特定值)
May 09 Javascript
jQuery实现简单弹窗遮罩效果
Feb 27 Javascript
微信小程序 图片加载(本地,网路)实例详解
Mar 10 Javascript
JavaScript数组_动力节点Java学院整理
Jun 26 Javascript
js 事件的传播机制(实例讲解)
Jul 20 Javascript
vue-router 源码之实现一个简单的 vue-router
Jul 02 Javascript
微信小程序+腾讯地图开发实现路径规划绘制
May 22 Javascript
基于vue.js实现购物车
Jan 15 Javascript
vue项目中使用particles实现粒子背景效果及遇到的坑(按钮没有点击响应)
Feb 11 Javascript
js实现盒子移动动画效果
Aug 09 Javascript
vue3.0实现插件封装
Dec 14 Vue.js
JavaScript中数据结构与算法(二):队列
Jun 19 #Javascript
JavaScript中数据结构与算法(一):栈
Jun 19 #Javascript
JQuery中模拟image的ajaxPrefilter与ajaxTransport处理
Jun 19 #Javascript
c#程序员对TypeScript的认识过程
Jun 19 #Javascript
JavaScript和JQuery的鼠标mouse事件冒泡处理
Jun 19 #Javascript
TypeScript 中接口详解
Jun 19 #Javascript
TypeScript 学习笔记之基本类型
Jun 19 #Javascript
You might like
基于php socket(fsockopen)的应用实例分析
2013/06/02 PHP
使用Appcan客户端自动更新PHP版本号(全)
2015/07/31 PHP
最新最全PHP生成制作验证码代码详解(推荐)
2016/06/12 PHP
PHP+ajax实现获取新闻数据简单示例
2018/05/08 PHP
PHP设计模式(一)工厂模式Factory实例详解【创建型】
2020/05/02 PHP
理解Javascript_01_理解内存分配原理分析
2010/10/11 Javascript
JavaScript中的noscript元素属性位置及作用介绍
2013/04/11 Javascript
js加入收藏夹代码(兼容ie/ff/op)
2014/05/16 Javascript
详解JavaScript操作HTML DOM的基本方式
2015/10/21 Javascript
原生JavaScript实现异步多文件上传
2015/12/02 Javascript
浅谈Sublime Text 3运行JavaScript控制台
2016/06/06 Javascript
jquery html5 视频播放控制代码
2016/11/06 Javascript
微信小程序Redux绑定实例详解
2017/06/07 Javascript
vue项目中引入noVNC远程桌面的方法
2018/03/05 Javascript
浅谈KOA2 Restful方式路由初探
2019/03/14 Javascript
JavaScript观察者模式原理与用法实例详解
2020/03/10 Javascript
浅谈Vuex的this.$store.commit和在Vue项目中引用公共方法
2020/07/24 Javascript
用实例说明python的*args和**kwargs用法
2013/11/01 Python
Python和perl实现批量对目录下电子书文件重命名的代码分享
2014/11/21 Python
Python处理PDF及生成多层PDF实例代码
2017/04/24 Python
基于python中staticmethod和classmethod的区别(详解)
2017/10/24 Python
Python动刷新抢12306火车票的代码(附源码)
2018/01/24 Python
对numpy中轴与维度的理解
2018/04/18 Python
Python 将Matrix、Dict保存到文件的方法
2018/10/30 Python
Python实现读取txt文件中的数据并绘制出图形操作示例
2019/02/26 Python
Django实现单用户登录的方法示例
2019/03/28 Python
百丽国际旗下购物网站:优购
2017/02/28 全球购物
Skyscanner澳大利亚:全球领先的旅游搜索网站
2018/03/24 全球购物
加州风格的游泳和沙滩装品牌:Cupshe
2019/06/10 全球购物
Jacques Lemans德国:奥地利钟表品牌
2019/12/26 全球购物
函授毕业生自我鉴定
2013/11/06 职场文书
创业女性典型材料
2014/05/02 职场文书
2014购房个人委托书范本
2014/10/12 职场文书
入队仪式主持词
2015/07/04 职场文书
python微信智能AI机器人实现多种支付方式
2022/04/12 Python
Java 死锁解决方案
2022/05/11 Java/Android