在生活中我们通信方式有电话,邮箱等,电话有座机和手机,下面我们要讲到的就是利用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))'
责任编辑:风中的自由