/**這是一個超實用的用js根據身份證號碼判斷性別男女的特效代碼,詳細看下面的*/
/**
根據身份證號碼判斷性別
15位身份證號碼:第7、8位為出生年份(兩位數),第9、10位為出生月份,第11、12位代表出生日
18位身份證號碼:第7、8、9、10位為出生年份(四位數),第11、第12位為出生月份,
第13、14位代表出生日期,第17位代表性別,奇數為男,偶數為女。
*/
function showBirthday(){
var val = $("#idCard").val().trim();//輸入的身份證號碼
var birthdayValue;
if(15==val.length){ //15位身份證號碼
birthdayValue = val.charAt(6)+val.charAt(7);
if(parseInt(birthdayValue)<10){
birthdayValue = '20'+birthdayValue;
}else{
birthdayValue = '19'+birthdayValue;
}
//性別判斷,給radio男女賦值,出生日期賦值
birthdayValue=birthdayValue+'-'+val.charAt(8)+val.charAt(9)+'-'+val.charAt(10)+val.charAt(11);
if(parseInt(val.charAt(14)/2)*2!=val.charAt(14))
$("#RadioGroup1_0").attr("checked",true);
else
$("#RadioGroup1_1").attr("checked",true);
$("#datepicker2").val(birthdayValue);
}
if(18==val.length){ //18位身份證號碼
//性別判斷,給radio男女賦值,出生日期賦值
birthdayValue=val.charAt(6)+val.charAt(7)+val.charAt(8)+val.charAt(9)+'-'+val.charAt(10)+val.charAt(11)
+'-'+val.charAt(12)+val.charAt(13);
if(parseInt(val.charAt(16)/2)*2!=val.charAt(16))
$("#RadioGroup1_0").attr("checked",true);
else
$("#RadioGroup1_1").attr("checked",true);
$("#datepicker2").val(birthdayValue);
}
}
// 18位身份證號最后一位校驗
function IDCard(Num){
if(Num.length!=18)
return false;
var x=0;
var y='';
for(i=18;i>=2;i--)
x = x + (square(2,(i-1))%11)*parseInt(Num.charAt(19-i-1));
x%=11;
y=12-x;
if (x==0)
y='1';
if (x==1)
y='0';
if (x==2)
y='X';
return y;
}
// 求得x的y次方
function square(x,y){
var i=1;
for (j=1;j<=y;j++)
i*=x;
return i;
}