日期:2014-05-16  浏览次数:20371 次

JS 手机,邮箱,邮编,坐机等常见验证
JS函数验证总结

//验证是否为整数,包括正负数;
function Is_Int(str)
{
var reg=/^(-|\+)?\d+$/;
return reg.test(str);
}
//是大于0的整数
function Is_positive_num(str)
{
var reg=/^\d+$/;
return reg.test(str);
}
//负整数的验证
function Is_minus(str)

{

var reg=/^-\d+$/;

return reg.test(str);

}

//验证是否为浮点数(正数)

function IsPositiveFloat(str)

{

var check_float =new RegExp("^[1-9][0-9]*\.[0-9]+$");//匹配浮点数

return check_float.exec(str);
}

//是否为固定电话,区号3到4位,号码7到8位,区号和号码用"-"分割开,转接号码为1到6位,用小括号括起来紧跟在号码后面

function IsTelphone(str)

{

var reg=/^[0-9]{3,4}\-\d{7,8}(\(\d{1,6}\))?$/;

   

    if (reg.test(str))

  return true;

    else

        return false;

}

//台湾手机号码格式

var tel=/^(09)\d{8}$/;
     if(phone.value=="" || (!tel.test(phone.value)))
     {
        alert('請填寫正確的(手機格式09xxxxxxxx )!');
     phone.focus();
     return false;
     }

//手机号码验证,验证13系列和158,159几种号码,长度11位

function IsMobel(str)

{

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

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

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



    return (reg0.test(str)||reg1.test(str)||reg2.test(str))

}

//验证是否为中文

function IsChinese(str)

{

var reg=/^[\u0391-\uFFE5]+$/;

return reg.test(str);

}

//验证是否为qq号码,长度为5-10位

function IsQq(str)

{

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

return reg.test(str);

}

//验证邮编

function IsPostId(str)

{

var reg=/^\d{6}$/;

return reg.test(str);

}

//验证是否未email

function IsEmail(str)

{

var reg=/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;

return reg.test(str);

}

//验证IP地址

function IsIp(str)

{

var check=function(v)

{

  try

  {

   return (v<=255 && v>=0)

  }catch(x){

    return false;

   }

}

var re=str.split(".")

return (re.length==4)?(check(re[0]) && check(re[1]) && check(re[2]) && check(re[3])):false

}

//身份证验证

function IsIdnum(str)

{

var City={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江 ",

     31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北 ",

     43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏 ",

     61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"***",71:"台湾",81:"香港",82:"澳门",91:"国外 "}

var iSum=0

var info=""

if(!/^\d{17}(\d|x)$/i.test(str))

  return false;

str=str.replace(/x$/i,"a");

if(City[parseInt(str.substr(0,2))]==null)

{

  alert( "Error:非法地区");

  return false;

}

sBirthday=str.substr(6,4)+"-"+Number(str.substr(10,2))+"-"+Number(str.substr(12,2));

var d=new Date(sBirthday.replace(/-/g,"/"))

if(sBirthday!=(d.getFullYear()+"-"+ (d.getMonth()+1) + "-" + d.getDate()))

{

  alert("Error:非法生日");

&n