日期:2014-05-16  浏览次数:20367 次

使用js 通过出生日期计算年龄

function calcAge(dateText)

{

var birthday=new Date(dateText.replace(/-/g, "\/"));?

var d=new Date();?

var age = d.getFullYear()-birthday.getFullYear()-((d.getMonth()<birthday.getMonth()|| d.getMonth()==birthday.getMonth() && d.getDate()<birthday.getDate())?1:0);

var month = calculateMonth(dateText);

var year = calculateAge(dateText);

document.all.item("ageTextField").value=age;

if(year >= 0){

if(month<0 && year==1){

document.all.item("ageTextField").value='0';

}

else{

document.all.item("ageTextField").value=year;

}

}

else{

document.all.item("ageTextField").value="";

}

}

function calculateMonth(birthday)

{

var month=-1;

if(checkBirthday(birthday))

{

var aDate=birthday.split("-");

if(aDate[1].substr(0,1) == '0')

aDate[1]=aDate[1].substring(1);

var birthdayMonth = parseInt(aDate[1]);

var currentDate = new Date();

?? ? var currentMonth = parseInt(currentDate.getMonth()+1);

?? ? month = currentMonth-birthdayMonth;

?? ? return month;

}

return month;

}

function calculateAge(birthday){

if(checkBirthday(birthday)){

var aDate=birthday.split("-");

var birthdayYear = parseInt(aDate[0]);

var currentDate = new Date();

?? ? var currentYear = parseInt(currentDate.getFullYear());?

?? ? return currentYear-birthdayYear;

?? ? }

?? ? return 0;

}