手机号,身份证号,姓名等校验

校验是经常用到的一块,这里收录了最新的校验规则,欢迎大家参考。
这里以easyui案例为例,第一块图片时整个:
手机号,身份证号,姓名等校验_第1张图片

这样一个校验就算完成了。
英文和数字:
/^[A-Za-z0-9]+$/

姓名:
/^[A-z]+$|^([\u4E00-\u9FA5]|[a-zA-Z]+\w)*$/


最新手机号,包括移动,联通,电信:
/^(((13[0-9]{1})|(14[579]{1})|(15[0-9]{1})|(16[6]{1})|(17[0135678]{1})|(18[0-9]{1})|(19[89]{1}))+\d{8})$/


邮箱地址:
/^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,6}$/


身份证号验证:
var aCity={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:"国外"}   
  
function isCardID(sId){   
    var iSum=0 ;  
    var info="" ;  
    if(!/^\d{17}(\d|x)$/i.test(sId)) return "你输入的身份证长度或格式错误";   
    sId=sId.replace(/x$/i,"a");   
    if(aCity[parseInt(sId.substr(0,2))]==null) return "你的身份证地区非法";   
    sBirthday=sId.substr(6,4)+"-"+Number(sId.substr(10,2))+"-"+Number(sId.substr(12,2));   
    var d=new Date(sBirthday.replace(/-/g,"/")) ;  
    if(sBirthday!=(d.getFullYear()+"-"+ (d.getMonth()+1) + "-" + d.getDate()))return "身份证上的出生日期非法";   
    for(var i = 17;i>=0;i --) iSum += (Math.pow(2,i) % 11) * parseInt(sId.charAt(17 - i),11) ;  
    if(iSum%11!=1) return "你输入的身份证号非法";   
    return true;//aCity[parseInt(sId.substr(0,2))]+","+sBirthday+","+(sId.substr(16,1)%2?"男":"女")   
}


护照:
/(P\d{7})|(G\d{8})/

 ip地址:

/^((([1-9]\d?)|(1\d{2})|(2[0-4]\d)|(25[0-5]))\.){3}(([1-9]\d?)|(1\d{2})|(2[0-4]\d)|(25[0-5]))$/


  只能中文:

/^[\u4e00-\u9fa5]+$/


  日期验证主要是:2010-05-25、2012/02/02、2012.5.14、20120202格式

/^[1-9]\d{3}([-|\/|\.])?((0\d)|([1-9])|(1[0-2]))\1(([0|1|2]\d)|([1-9])|3[0-1])$/;









你可能感兴趣的:(校验,js前端)