信用机构代码生成器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
//信用机构代码校验
function isOrgId(orgId){
if (orgId.length != 18) {
alert("长度不对");
return false;
}
if(/[A-Z]{1}[0-9]{16}[0-9A-Z\\*]{1}/.test(orgId) == false){
alert("规格不符合校验");
return false;
}
var m = 36;
var s = m;
var c="";
for (var i = 0; i <= 16; i++) {
c = orgId.charCodeAt(i);
s = (s + char2num(c)) % m;
if (s == 0) s = m;
s = s * 2 % (m + 1);
}
if((s + char2num(orgId.charCodeAt(17))) % m == 1){
alert("校验通过");
return true;
}else{
alert("校验不通过");
return false;
}
}
function char2num(a){
if (a == 42)
return 36;
if ((a >= 48) && (a <= 57)) {
return a - 48;
}
return a - 55;
//生成号码
function generateOrgId(orgId){
document.all.inputData.value = "";
var c ;
var m =36;
var s = m;
for (var i = 0; i < 17; i++) {
c = orgId.charCodeAt(i);
s = (s + char2num(c)) % m;
if (s == 0) s = m;
s = s * 2 % (m + 1);
}
for(var j=0;j<100000; j++){
if((s + char2num(orgId.charCodeAt(17))) % m == 1){
document.all.inputData.value = orgId ;
}else{
return generateOrgId(getRandom());
}
}
}
/**
* 返回一个随机的大写字母
*/
function getUpperCharacter(){
character = String.fromCharCode(Math.floor( Math.random() * 26) + "A".charCodeAt(0)); return character;
}
/*
生成16位随机数字
function getRandom(){
var i ;
var temp ;
var temps=0;
for(i = 0 ; i < 16 ; i++)
{
temp = 0;
temp = parseInt(Math.random()*9);
temps=temps*10+temp;
}
return getUpperCharacter()+""+temps+""+getUpperCharacter();
}
信用机构号码:
注:信用机构代码是企业的身份证,号码唯一有校验。