Добавить функцию расчета в теги выбора даты рождения
Существует популярная функция, которая вычисляет возраст человека на основе его даты рождения, если используется функция выбора даты jQuery. Функции следующие:
function calculateAge(birthday) {
var mybirthday = new Date(birthday.split("-").reverse().join("-")).getTime();
var ageDifMs = Date.now() - mybirthday; //.getTime();
var ageDate = new Date(ageDifMs); // miliseconds from epoch
return Math.abs(ageDate.getUTCFullYear() - 1970);
}
function dateDiffInYears(dateold, datenew) {
var ynew = datenew.getFullYear();
var mnew = datenew.getMonth();
var dnew = datenew.getDate();
var yold = dateold.getFullYear();
var mold = dateold.getMonth();
var dold = dateold.getDate();
var diff = ynew - yold;
if (mold > mnew) diff--;
else {
if (mold == mnew) {
if (dold > dnew) diff--;
}
}
return diff;
}
$(".datepic").datepicker({
dateFormat: 'dd-mm-yy',
changeMonth: true,
changeYear: true,
yearRange: '-90:+0',
onClose: function (selectedDate) {
if (calculateAge(selectedDate) < 12) {
$("#parent_section").show();
} else {
$("#parent_section").hide();
}
}
});
Однако это прекрасно работает, когда пользователь выбирает дату, когда вводит курсор в текстовое поле, и ему приходится выбирать дату из средства выбора даты.
У меня проблема в том, что у меня есть три отдельных тега выбора. Один на дату, другой на месяц, а другой на год. Как я могу рассчитать возраст человека, используя эти теги выбора? Я потратил много времени на это и не могу понять это. Любая помощь будет принята с благодарностью.