javascript判断身份证号信息是否正确的方法
2014-09-23 16:39
197 查看
网站注册经常需要用到实名认证需要用户或者玩家提供身份证信息,在提交到服务器之前需要做一个正确性的判断,可以用一个js函数实现
checkRealCard:function(strRealCard){ var getAppendZore = function(strNum){ if(strNum < 10){ strNum = '0'+strNum; } return strNum; }; var tmpRealCard = strRealCard; var tmpCityCode = { 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: "国外" }; if (tmpRealCard == ''){ return '身份证号码不能为空'; } // Check real card. var tmpRegx=new RegExp(/(^\d{15}$)|(^\d{17}(\d|x|X)$)/i); if (!tmpRegx.exec(tmpRealCard)){ return '身份证号码长度必须正确,请核对!'; } // Check 15 length. var tmpRegx=new RegExp(/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/); if (tmpRegx.exec(tmpRealCard)){ tmpBirthday = '19'+tmpRealCard.substring(6,8)+'-'+tmpRealCard.substring(8,10)+'-'+tmpRealCard.substring(10,12); }else{ tmpSum = 0; tmpRealCard = tmpRealCard.replace(/x|X$/i,"a"); for (var i = 17; i >= 0; i--){ tmpSum += (Math.pow(2, i) % 11) * parseInt(tmpRealCard.charAt(17 - i), 11); } if (tmpSum % 11 != 1) { return '身份证号码不符相关标准,请核对!'; } tmpBirthday = tmpRealCard.substring(6,10)+'-'+tmpRealCard.substring(10,12)+'-'+tmpRealCard.substring(12,14); } // Check City. if (tmpCityCode[parseInt(tmpRealCard.substring(0, 2))] == null){ return '身份证号码证件地区未知,请核对!'; } // Check Birthday. var tmpDate = new Date(tmpBirthday.replace(/-/g, "/")); if (tmpBirthday != (tmpDate.getFullYear()+'-'+ getAppendZore(tmpDate.getMonth()+1)+'-'+ getAppendZore(tmpDate.getDate()))){ return '身份证号码出生日期非法,请核对!'; } //alert(tmpBirthday); return true; },
相关文章推荐
- javascript或asp实现的判断身份证号码是否正确两种验证方法
- 判断身份证号码是否正确javascript、asp两种验证方法
- 判断JavaScript对象是否可用的最正确方法分析
- 判断JavaScript对象是否可用的正确方法
- 判断JavaScript对象是否可用的正确方法
- 判断JavaScript对象是否可用的最正确方法分析
- 在主函数中提示用户输入用户名和密码。另写一方法来判断用户输入是否正确。该方法分别返回一个bool类型的登录结果和和一个string类型的登录信息。如登录成功,返回true及“登录成功”,若登录失败则返回false及“用户名错误”或“密码错误”(使用out参数)
- iOS判断身份证号码是否正确的方法
- 转判断JavaScript对象是否可用的正确方法
- JavaScript - JS验证邮箱 身份证 VISA 卡输入是否正确|正则表达式
- Javascript 判断浏览器是否为IE的最短方法
- javascript判断日期格式是否正确
- JS(JavaScript)判断邮箱格式是否正确
- 【Javascript】判断 iframe 是否加载完成的完美方法
- javascript 判断方法是否存在
- javaScript 判断字符串是否为数字的简单方法
- javascript如何判断数组内元素是否重复的方法集锦
- javascript 判断方法是否存在
- JavaScript 判断日期是否正确