//check CorpID function CheckORG(CorpID){ var financecode = new Array(); if(CorpID=="00000000-0"|| CorpID.length!=10) return false; for(var i=0;i= 97) return false; } for(var j = 0; j < 8; j++){ if(financecode[j] >= 65 && financecode[j] <= 90) //字母 c_i[j] = (financecode[j] - 65) + 10; else if(financecode[j] >= 48 && financecode[j] <= 57) //数字 c_i[j] = financecode[j] - 48; else return false; s += w_i[j] * c_i[j]; } c = 11 - s % 11; return financecode[9] == 88 && c == 10 || c == 11 && financecode[9] == 48 || c == financecode[9] - 48; } //组织机构代码校验 function checkORGRight(obj) { var code = obj; if (code.length == 10) { return checkORGRight1(obj); }else if(code.length == 15){//营业执照号 / 税务登记证 var flag = isValidBusinessLicense(code); if(!flag){ flag = isValidTaxCode(code); } if (!flag) { //alert("组织机构代码/社会信用代码错误!"); } return flag; } else { var flag = isValidSocialCreditIdentifier(code); if (!flag) { //alert("组织机构代码/社会信用代码错误!"); } return flag; } } function checkORGRight1(obj){//校验组织机构代码 var code=obj; if(code.length>0){ code=code.substring(0,1); if(code=="X"){return true; } } var financecode=obj; var fir_value, sec_value; var w_i = new Array(8); var c_i = new Array(8); var j, s = 0; var c, i; var code = financecode; if (code.length<1) { //alert("请输入组织机构代码!"); return false; } if (code == "00000000-0") { //mini.alert("组织机构代码/社会信用代码错误!"); return false; } re = /[A-Z0-9]{8}-[A-Z0-9]/; r = code.match(re); if (r == null) { // mini.alert("组织机构代码/社会信用代码错误!"); return false; } w_i[0] = 3; w_i[1] = 7; w_i[2] = 9; w_i[3] = 10; w_i[4] = 5; w_i[5] = 8; w_i[6] = 4; w_i[7] = 2; if (financecode.charAt(8) != '-') { // mini.alert("组织机构代码/社会信用代码错误!"); return false; } for (i = 0; i < 10; i++) { c = financecode.charAt(i); if ((c <= 'z') && (c >= 'a')) { // mini.alert("组织机构代码/社会信用代码错误!"); return false; } } fir_value = financecode.charCodeAt(0); sec_value = financecode.charCodeAt(1); if (fir_value >= 'A'.charCodeAt(0) && fir_value <= 'Z'.charCodeAt(0)) { c_i[0] = fir_value + 32 - 87; } else { if (fir_value >= '0'.charCodeAt(0) && fir_value <= '9'.charCodeAt(0)) { c_i[0] = fir_value - '0'.charCodeAt(0); } else { //mini.alert("组织机构代码/社会信用代码错误!"); return false; } } s = s + w_i[0] * c_i[0]; if (sec_value >= 'A'.charCodeAt(0) && sec_value <= 'Z'.charCodeAt(0)) { c_i[1] = sec_value + 32 - 87; } else if (sec_value >= '0'.charCodeAt(0) && sec_value <= '9'.charCodeAt(0)) { c_i[1] = sec_value - '0'.charCodeAt(0); } else { //mini.alert("组织机构代码/社会信用代码错误!"); return false; } s = s + w_i[1] * c_i[1]; for (j = 2; j < 8; j++) { if (financecode.charAt(j) < '0' || financecode.charAt(j) > '9') { //alert("组织机构代码/社会信用代码错误!"); return false; } c_i[j] = financecode.charCodeAt(j) - '0'.charCodeAt(0); s = s + w_i[j] * c_i[j]; } c = 11 - (s % 11); if (!((financecode.charAt(9) == 'X' && c == 10) || (c == 11 && financecode.charAt(9) == '0') || (c == financecode.charCodeAt(9) - '0'.charCodeAt(0)))) { // mini.alert("组织机构代码/社会信用代码错误!"); return false; } return true; } function isValidBusinessLicense(code){ var businessCodeReg = /^\d{15}$/g; if(!businessCodeReg.test(code)){ return false; } var s = []; var p = []; var a = []; var m = 10; p[0] = m; for(var i = 0 ; i < code.length;i++){ a[i] = parseInt(code.substring(i,i+1),m); s[i] = (p[i]%(m+1)) + a[i]; if(0 == s[i] % m){ p[i+1] = 10 *2; }else { p[i+1] = (s[i]%m)*2; } } if(s[14]%m == 1){//校验位的合法性 //合法 return true; }else{ return false; } } function isValidTaxCode(code){ //前六位区域代码 var taxCodeReg = /^\d{14}[\d|X]$/g; if(!taxCodeReg.test(code)){ return false; } var provinceAndCitys = {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 areaId = code.substring(0,6); var check = /^[1-9]\d{5}$/.test(areaId); if(!check) return false; if(provinceAndCitys[parseInt(code.substring(0,2))]){ return true; }else{ return false; } var tCode = code.substr(6, 8) + "-" + code.substr(14, 1); if (isValidEntpCode(tCode) == false){ return false; }else{ return true; } } // 验证社会信用代码 18位 function isValidSocialCreditIdentifier(code) { if (code.length != 18) return false; var ws = [1, 3, 9, 27, 19, 26, 16, 17, 20, 29, 25, 13, 8, 24, 10, 30, 28]; var str = "0123456789ABCDEFGHJKLMNPQRTUWXY"; //验证9-17位 的组织机构代码 var tCode = code.substr(8, 8) + "-" + code.substr(16, 1); if (isValidEntpCode(tCode) == false) return false; var sum = 0; for (var i = 0; i < 17; i++) { sum += str.indexOf((code.substr(i, 1)) + "") * ws[i]; } var c18 = 31 - (sum%31); if(c18 > 30){ c18 = 0; } return (str.substr(c18, 1) + "") == (code.substr(17, 1)); } function isValidEntpCode(code) { var ws = [3,7,9,10,5,8,4,2]; var str = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"; var rx = /^([0-9A-Z]){8}-[0-9|X]$/g; if (!rx.test(code)){return false;} var sum = 0; for (var i = 0; i < 8; i++) {sum += str.indexOf((code.substr(i,1))+"") * ws[i];} var c9 = 11 - (sum % 11); var sc9 =c9+""; if (11 == c9) {sc9 = "0";} else if (10 == c9) { sc9 = "X";} return sc9==(code.substr(9,1)); } //日期校验 function CheckDate(sDate){ return checkDate(sDate); } function checkDate(sDate){ var checkedDate = sDate; var year,month,day; //日期为空 长度不等于8或14 返回错误 var maxDay = new Array(0,31,29,31,30,31,30,31,31,30,31,30,31); //if(checkedDate == null ) return false; checkedDate = checkedDate.trim(); if (checkedDate.length != 8 && checkedDate.length != 14) { return false; } year = checkedDate.substring(0, 4).trim(); month = checkedDate.substring(4, 6).trim(); day = checkedDate.substring(6, 8).trim(); // 日期中1至4位 年小于1900 返回错误 if (year < 1900) { return false; } // 日期中5至6位 月在1至12区间之外 返回错误 if (month < 1 || month > 12) { return false; }else if(month < 10) month = month.substr(1, 1); // 日期中7至8位 日在1至maxDay[month]区间之外 返回错误 if (day > maxDay[month] || day == 0) { return false; } // 非闰年2月份日期大于29 if (day == 29 && month == 2 && (year % 4 != 0 || year % 100 == 0) && (year % 4 != 0 || year % 400 != 0)) { return false; } if (checkedDate.length == 14) { // 日期长度为14位 var hour = checkedDate.substring(8, 10); var miniute = checkedDate.substring(10, 12); var second = checkedDate.substring(12, 14); // 日期中9至10位 小时在0至23区间之外 返回错误 if (hour > 23 || hour < 0) { return false; } // 日期中11至12位 分钟在0至59区间之外 返回错误 if (miniute > 59 || miniute < 0) { return false; } // 日期中13至14位 秒在0至59区间之外 返回错误 if (second > 59 || second < 0) { return false; } } return true; } function CheckPersonId(personId){ return checkPersonId(personId); } function checkPersonId(personId){ var strJiaoYan = new Array("1","0","X","9","8","7","6","5","4","3","2"); var intQuan = new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1); var intTemp = 0; for (var i = 0; i < personId.length - 1; i++){ intTemp += personId.substring(i, i + 1) * intQuan[i]; } intTemp %= 11; return personId.substring(personId.length - 1)==strJiaoYan[intTemp]; } //身份证校验 function CheckLicense(ID){ var checkedValue = ID; checkedValue = checkedValue.trim(); if (checkedValue.length != 15 && checkedValue.length != 18) return false; var dateValue; if (checkedValue.length == 15) dateValue = "19" + checkedValue.substring(6, 12); else dateValue = checkedValue.substring(6, 14); if (!checkDate(dateValue)) return false; if (checkedValue.length == 18) return checkPersonId(checkedValue); return true; } //贷款卡卡号的正确性检验程序 function CheckLoanCardID(loanCardCode){ var financecode = new Array(); for(var i=0;i= 65 && financecode[j] <= 90){ checkValue[j] = (financecode[j] - 65) + 10; } else if (financecode[j] >= 48 && financecode[j] <= 57){ checkValue[j] = financecode[j] - 48; } else { return false; } totalValue += weightValue[j] * checkValue[j]; } c = 1 + totalValue % 97; val = (financecode[14] - 48) * 10 + (financecode[15] - 48); return val == c; } //校验邮政编码 function CheckPostalcode(Postalcode){ var str = Postalcode; str = str.trim(); if (str.length > 0){ if (str.length != 6 || str == "000000"){ //征信要求邮政编码不能六位全为0. return false; } var Letters = "1234567890"; for (var i = 0;i < str.length;i++){ var CheckChar = str.charAt(i); if (Letters.indexOf(CheckChar) == -1){ return false; } } } return true; } //校验电话号码 function CheckPhoneCode(PhoneCode){ var str = PhoneCode; str = str.trim(); if (str.length > 0) { var patrn=/^([0-9]{1,3}-)?([0-9]{2,4}-)?[0-9]{7,11}(-[0-9]{1,5})?$/;//匹配电话号码及手机号码 if (patrn.exec(str)) { return true; } } return false; } //校验电子邮件地址 function CheckEMail(EMail){ var Count = 0; var str = EMail; str = str.trim(); if (str.length > 0) { var Letters = "@"; //检查字符串中是否存在"@"字符 if (str.indexOf(Letters) == -1) { return false; } //检查字符串中是否存在多个"@"字符 for (var i = 0;i < str.length;i++) { var CheckChar = str.charAt(i); if (Letters.indexOf(CheckChar) >= 0) { Count = Count + 1; } } if(Count > 1){ return false; } } return true; } function CheckTypeScript(sCheckWord,sCheckType){ sCheckWord = sCheckWord.trim(); if(sCheckType=="2"){ var patrn=/^[0-9,.]{1,20}$/; if (patrn.exec(sCheckWord)) return true; } return false; } //校验账号为全部数字 function CheckAccountNo(svalue){ var reg = new RegExp("^[0-9]*$"); if(!reg.test(svalue)){ return false; } return true; } //校验账号全部为数字或字母 function CheckAccountNoNumChar(svalue){ var reg = new RegExp("^[a-zA-Z0-9]*$"); if(!reg.test(svalue)){ return false; } return true; } //3.5水印bug,通过该校验进行必输项控制 /*function checkRequired(svalue){ if(typeof(svalue)=="undefined"||svalue.length==0){ return false; }else{ return true; } }*/