js真實身份證號碼驗證

2021-09-02 09:36:28 字數 1822 閱讀 6703

function isidcard(obj)  

var y,jym;

var s,m;

var idcard = obj.value.touppercase();

if(idcard!=obj.value)

//位數檢測

if(idcard == null || idcard == "" || (idcard.length != 15 && idcard.length != 18))

var idcard_array = new array();

idcard_array = idcard.split("");

//地區檢驗

if(area[parseint(idcard.substr(0,2))] == null)

//身份號碼位數及格式檢驗

if(idcard.length == 15) [0-9]((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]$/;//測試出生日期的合法性

} else [0-9]((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]$/;//測試出生日期的合法性

} if(ereg.test(idcard))else

return true;

} else if(idcard.length == 18) [0-9]((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9][0-9xxzz]$/;//閏年出生日期的合法性正規表示式

} else [0-9]((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9][0-9xxzz]$/;//平年出生日期的合法性正規表示式

} if(idcard_array[17]!='z'&&idcard_array[17]!='z')else

}else

} return true;}}

/**purpose: 獲取'性別'

*obj: ''

*@param: stnum-> '身份證號碼'

**/

function create***(stnum)

return ***id;

} /**purpose: 獲取'出生日期'

*obj: ''

*@param: stnum-> '身份證號碼'

**/

function createbirth(stnum)

return birthstr;

} /**purpose: 獲取'年齡'

*obj: ''

*@param: stnum-> '身份證號碼'

**/

function createagenew(stnum)

if(jtrim(stnum).length == 15)

if(jtrim(stnum).length == 8)

}

return age;

}

js身份證號碼驗證

15位或18位身份證號碼驗證例子 身份證15位編碼規則 dddddd yymmdd xx p dddddd 地區碼 yymmdd 出生年月日 xx 順序類編碼,無法確定 p 性別,奇數為男,偶數為女 身份證18位編碼規則 dddddd yyyymmdd y dddddd 地區碼 yyyymmdd 出...

js驗證身份證號碼

前面定義全域性變數 var checked if checked layer.close loading return 此方法為失去焦點事件 function iscardno 1 9 d 2 d 0 1 9 1 0 2 0 1 9 1 2 0 9 3 0 1 d 0 9xx 號碼規則校驗 if f...

js驗證身份證號碼

1 簡單的正規表示式 1 preg match d d dx id card 2 preg match d 18 19 20 d 01 d 0123 d d d x id card 3 preg match d d d x x id card 2 複雜並且嚴格一些的驗證 這個可以驗證15位和18位的...