15位或18位身份證號碼驗證例子:
/**
* 身份證15位編碼規則:dddddd yymmdd xx p
* dddddd:地區碼
* yymmdd: 出生年月日
* xx: 順序類編碼,無法確定
* p: 性別,奇數為男,偶數為女
* * 身份證18位編碼規則:dddddd yyyymmdd *** y
* dddddd:地區碼
* yyyymmdd: 出生年月日
* ***:順序類編碼,無法確定,奇數為男,偶數為女
* y: 校驗碼,該位數值可通過前17位計算獲得
* * 18位號碼加權因子為(從右到左) wi = [ 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2,1 ]
* 驗證位 y = [ 1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2 ]
* 校驗位計算公式:y_p = mod( ∑(ai×wi),11 )
* i為身份證號碼從右往左數的 2...18 位; y_p為腳丫校驗碼所在校驗碼陣列位置
* */
var wi = [ 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1 ];// 加權因子
var validecode = [ 1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2 ];// 身份證驗證位值.10代表x
function idcardvalidate(idcard) else if (idcard.length == 18) else
} else
} /**
* 判斷身份證號碼為18位時最後的驗證位是否正確
* @param a_idcard 身份證號碼陣列
* @return
*/ function istruevalidatecodeby18idcard(a_idcard)
for ( var i = 0; i < 17; i++)
valcodeposition = sum % 11;// 得到驗證碼所位置
if (a_idcard[17] == validecode[valcodeposition]) else
} /**
* 通過身份證判斷是男是女
* @param idcard 15/18位身份證號碼
* @return 'female'-女、'male'-男
*/ function maleorfemalbyidcard(idcard)else
}else if(idcard.length ==18)else
}else
} /**
* 驗證18位數身份證號碼中的生日是否是有效生日
* @param idcard 18位書身份證字串
* @return
*/ function isvaliditybrithby18idcard(idcard18)else
} /**
* 驗證15位數身份證號碼中的生日是否是有效生日
* @param idcard15 15位書身份證字串
* @return
*/ function isvaliditybrithby15idcard(idcard15)else
} //去掉字串頭尾空格
function trim(str)
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位的...
身份證號碼驗證js
功能 驗證身份證號碼是否有效 提 示資訊 未輸入或輸入身份證號不正確!使用 validateidcard obj 返回 0,1,2,3 function validateidcard obj var isum 0 var info var stridno obj var idcardlength s...