我有一列ID(身份证号),有15和18位,我想求一自定义javascript函数GetBrithday(ID),通过这个函数算出出生年月日,出生年月日的格式为yyyy-mm-dd
例如 GetBrithday('215410198101211014') 可以得到1981-01-21
GetBrithday('440321750306341') 可以得到1975-03-06 特求这个函数,帮忙!
例如 GetBrithday('215410198101211014') 可以得到1981-01-21
GetBrithday('440321750306341') 可以得到1975-03-06 特求这个函数,帮忙!
{
var tmpStr="";
var idDate="";
var tmpInt=0;
var strReturn = "";
iIdNo = trim(iIdNo);
if((iIdNo.length!=15) &&(iIdNo.length!=18))
{
strReturn = "输入的身份证号位数错误";
return strReturn;
} if(iIdNo.length==15)
{
tmpStr=iIdNo.substring(6,12);
tmpStr= "19" + tmpStr;
tmpStr= tmpStr.substring(0,4) + "-" + tmpStr.substring(4,6) + "-" + tmpStr.substring(6) return tmpStr;
}
else {
tmpStr=iIdNo.substring(6,14);
tmpStr= tmpStr.substring(0,4) + "-" + tmpStr.substring(4,6) + "-" + tmpStr.substring(6) return tmpStr;
}
}
function GetBrithday(id){
var ret = id.substr((id.length == 15 ? 6 : 8), 6);
return "19" + ret.match(/\d{2}/g).join("-");
}
function GetBrithday(s){
if(s.length==15) s = "19" + s.substr(6, 6);
else s = s.substr(6,8);
var y = s.substr(0,4);
var m = s.substr(4,2);
var d = s.substr(6,2);
return y + "-" + m + "-" + d;
}alert(GetBrithday("215410198101211014"))
alert(GetBrithday("440321750306341"))
var x;
var y;
var x1="";x2="";x3="";
function a()
{
x=sr.value;
y=x.length;
if(y!=15 && y!=18)
{
alert("输入的身份证号码位数错误!")
}
if(y==15)
{
x="19"+x.substr(6,6);
x1=x.substr(0,4);
x2=x.substr(4,2);
x3=x.substr(6,2);
st.value=x1+"-"+x2+"-"+x3;
}
if(y==18)
{
x=x.substr(6,8);
x1=x.substr(0,4);
x2=x.substr(4,2);
x3=x.substr(6,2);
st.value=x1+"-"+x2+"-"+x3;
}
}
</script>