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 18 Javascript
JavaScript 学习初步 入门教程
Mar 25 Javascript
前端实现文件的断点续传(前端文件提交+后端PHP文件接收)
Nov 04 Javascript
Javascript 制作图形验证码实例详解
Dec 22 Javascript
Vue如何实现组件的源码解析
Jun 08 Javascript
p5.js入门教程之鼠标交互的示例
Mar 16 Javascript
利用js实现前后台传送Json的示例代码
Mar 29 Javascript
详解React native fetch遇到的坑
Aug 30 Javascript
JS+HTML5 Canvas实现简单的写字板功能示例
Aug 30 Javascript
CKEditor 4.4.1 添加代码高亮显示插件功能教程【使用官方推荐Code Snippet插件】
Jun 14 Javascript
jQuery子选择器与可见性选择器实例分析
Jun 28 jQuery
微信小程序图片左右摆动效果详解
Jul 13 Javascript
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响应post请求上传文件的方法
2015/12/17 PHP
WordPress开发中的get_post_custom()函数使用解析
2016/01/04 PHP
PHP 生成微信红包代码简单
2016/03/25 PHP
PHP实现的策略模式示例
2019/03/20 PHP
Wordpress ThickBox 点击图片显示下一张图的修改方法
2010/12/11 Javascript
jQuery EasyUI API 中文文档 - Dialog对话框
2011/11/15 Javascript
javascript 正则表达式相关应介绍
2012/11/27 Javascript
代码触发js事件(click、change)示例应用
2013/12/13 Javascript
JQuery 图片滚动轮播示例代码
2014/03/24 Javascript
javascript实现点击后变换按钮显示文字的方法
2015/05/13 Javascript
AngularJS实现根据变量改变动态加载模板的方法
2016/11/04 Javascript
详解Nodejs的timers模块
2016/12/22 NodeJs
Bootstrap轮播图学习使用
2017/02/10 Javascript
json对象及数组键值的深度大小写转换问题详解
2018/03/30 Javascript
对vue中的事件穿透与禁止穿透实例详解
2019/10/28 Javascript
[01:03:38]2014 DOTA2国际邀请赛中国区预选赛5.21 CNB VS CIS
2014/05/22 DOTA
简单的Python抓taobao图片爬虫
2014/10/26 Python
Python2与Python3的区别实例分析
2019/04/11 Python
Python selenium爬取微信公众号文章代码详解
2020/08/12 Python
Pycharm常用快捷键总结及配置方法
2020/11/14 Python
Python 无限级分类树状结构生成算法的实现
2021/01/21 Python
纯CSS3实现手风琴风格菜单具体步骤
2013/05/06 HTML / CSS
HTML5+CSS3网页加载进度条的实现,下载进度条的代码实例
2016/12/30 HTML / CSS
MANGO官方网站:西班牙芒果服装品牌
2017/01/15 全球购物
澳大利亚墨尔本的在线时装店:LORETA
2018/09/14 全球购物
请编程遍历页面上所有 TextBox 控件并给它赋值为 string.Empty
2015/12/03 面试题
通信工程专业个人找工作求职信范文
2013/09/21 职场文书
大学生水文观测实习自我鉴定
2013/09/29 职场文书
心碎乌托邦的创业计划书范文
2013/12/26 职场文书
旅游管理专业生自荐信范文
2014/01/02 职场文书
作文评语集锦大全
2014/04/23 职场文书
公司演讲稿开场白
2014/08/25 职场文书
2014年党支部书记工作总结
2014/12/04 职场文书
安全先进个人材料
2014/12/29 职场文书
思想品德课教学反思
2016/02/24 职场文书
导游词之安徽巢湖
2019/12/26 职场文书