首页 > 编程 > JavaScript > 正文

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

2019-11-20 12:12:55
字体:
来源:转载
供稿:网友

附加一个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;     }   } 

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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表