各种验证

 用户名:   密码:  登录 注册 JayChang_Z的空间 主页博客相册|个人档案 |好友   查看文章    

通用JS验证(手机,电话,邮箱,QQ)2010-05-04 18:59//定义邮箱,电话,手机,QQ,税友通验证标志

var email_Flag = false;

var phone_Flag = false;

var mobile_Flag = false;

var qq_Flag = false;

var syt_Flag = false;

//验证是否为空

function verifyIsNull(info_span,str){

var flag = false;

if(str == ""){

info_span.innerHTML = "对不起,您输入的内容为空。";

flag = true;

}

return flag;

}

//验证邮箱  

function verfifyEmail(){

var strEmail = document.getElementById("email").value;

var email_info = document.getElementById("email_info");

if(verifyIsNull(email_info,strEmail)){

email_Flag = false;

return ;

}

var reg = /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;

email_Flag = reg.test(strEmail);

if(email_Flag){

email_info.innerHTML = "恭喜!邮箱地址输入正确。";

}else{

email_info.innerHTML = "对不起,您输入的邮箱地址格式错误。";

}

}

//验证qq号码

function verifyQQ(){

var strQQ = document.getElementById("qq").value;

var qq_info = document.getElementById("qq_info");

if(verifyIsNull(qq_info,strQQ)){

qq_Flag = false;

return;

}

var reg = /^[1-9]\d{4,8}$/;

qq_Flag =  reg.test(strQQ);

if(qq_Flag){

qq_info.innerHTML = "恭喜!QQ号码输入正确。";

}else{

qq_info.innerHTML = "对不起,您输入的QQ号码格式错误。";

}

}

//验证电话号码

function verifyPhone(){

var strPhone = document.getElementById("phone").value; 

var phone_info = document.getElementById("phone_info");

var reg = /^(([0\+]\d{2,3}-)?(0\d{2,3})-)?(\d{7,8})(-(\d{3,}))?$/;

if(verifyIsNull(phone_info,strPhone)){

phone_Flag = false;

return ;

}     

phone_Flag = reg.test(strPhone);

if(phone_Flag){

phone_info.innerHTML = "恭喜!电话号码输入正确。";

}else{

phone_info.innerHTML = "对不起,您输入的电话号码格式错误。";

}

}  

//验证手机号码

function verifyMobile(){

var strMobile = document.getElementById("mobile").value;

var mobile_info = document.getElementById("mobile_info");

if(verifyIsNull(mobile_info,strMobile)){

mobile_Flag = false;

return;

}

var reg0=/^13\d{9}$/;

var reg1=/^153\d{8}$/;

var reg2=/^159\d{8}$/;

var reg3=/^158\d{8}$/;

var reg4=/^150\d{8}$/;

if(reg0.test(strMobile) || reg1.test(strMobile) || reg2.test(strMobile) || reg3.test(strMobile) || reg4.test(strMobile)){

mobile_Flag = true;

}else{

mobile_Flag = false;

}

if (mobile_Flag){

document.getElementById("mobile_info").innerHTML = "恭喜!手机号码输入正确。";

}else{

document.getElementById("mobile_info").innerHTML = "对不起,您输入的手机号码格式错误。";

}

}

说明 

test方法检查在字符串中是否存在一个模式,如果存在则返回 true,否则就返回 false。 

正则表达式部分: 

\d 代表一个数字 

{7,8} 代表7-8位数字(表示电话号码) 

{3,} 代表分机号码 

d{2,3} 代表区号 

\+]\d{2,3} 代表国际区号 

^13\d{5,9}$/ //130–139。至少5位,最多9位 

/^153\d{4,8}$/ //联通153。至少4位,最多8位 

/^159\d{4,8}$/ //移动159。至少4位,最多8位 

posted on 2011-03-21 16:40  dauntless  阅读(265)  评论(0)    收藏  举报