Добавить функцию расчета в теги выбора даты рождения

Существует популярная функция, которая вычисляет возраст человека на основе его даты рождения, если используется функция выбора даты 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();
        }
    }
});

Однако это прекрасно работает, когда пользователь выбирает дату, когда вводит курсор в текстовое поле, и ему приходится выбирать дату из средства выбора даты.

У меня проблема в том, что у меня есть три отдельных тега выбора. Один на дату, другой на месяц, а другой на год. Как я могу рассчитать возраст человека, используя эти теги выбора? Я потратил много времени на это и не могу понять это. Любая помощь будет принята с благодарностью.

0 ответов

Другие вопросы по тегам