建站教学网,让你建站更便捷和轻松!
您当前的位置:首页 > 网页制作 > Javascript/Ajax
javascript电话号码和手机号码正则验证分析
来源:建站教学网  时间:2012-04-10 15:00:30

在生活中我们通信方式有电话,邮箱等,电话有座机和手机,下面我们要讲到的就是利用js正则判断验证电话和手机号的合法性,有需要的朋友可以了解一下。

下面看一段最简单的电话号验证,这里只判断了用户输入的是数据就可以通过这是很有问题的

 代码如下 
function Number_Validator(testValue)
{
    var checkOK = "0123456789";
    var checkStr = testValue;
    var allValid = true;
    for (i = 0;  i < checkStr.length;  i++)
    {
      ch = checkStr.charAt(i);
      for (j = 0;  j < checkOK.length;  j++)
     if (ch == checkOK.charAt(j))
       break;
      if (j == checkOK.length)
      {
       return (false);
      }
    }
    return (true);
}
 

如用户输入123456789 难道也这是电话,下面我们看另一个电话验证的代码


//由于方法相同,一下只写出相关的正则表达式
//对于手机号码的验证(提供了两种方法)
var mobile=/^((13[0-9]{1})|159|153)+d{8}$/;
var mobile1=/^(13+d{9})|(159+d{8})|(153+d{8})$/;

 
 //验证手机号码(检验13,15,18开头的手机号!)

 代码如下 
 function check_telephone(obj){ 
     var reg= /^[1][358]d{9}$/; 
     if(obj.value!=""&&!reg.test(obj.value)){ 
         alert('手机号码格式输入错误!'); 
         obj.value = ""; 
         obj.focus(); 
         return false; 
     } 
 }  

//对于区号的验证
 var phoneAreaNum = /^d{3,4}$/;
//对于电话号码的验证
 var phone =/^d{7,8}$/;

 代码如下 
function check_phone(obj){ 
     var reg=/^(([0+]d{2,3}-)?(0d{2,3})-)?(d{7,8})(-(d{3,}))?$/;  
     if(obj.value!=""&&!reg.test(obj.value)){ 
         alert('电话号码格式输入错误!'); 
         obj.value = ""; 
         obj.focus(); 
         return false; 
     } 
 } 

 

验证固定电话号码
 0d{2,3}   代表区号   
   [0+]d{2,3}   代表国际区号
  d{7,8} 代表7-8位数字(表示电话号码)
  正确格式:区号-电话号码-分机号(全写|只写电话号码)


调用 方法我们只要在form加上onsubmit='return(CheckInput(this))'

责任编辑:风中的自由

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
CopyRight 2008-2009, chenwenguang.cn, Inc. All Rights Reserved
皖ICP备09015033号