datepicker - 计算用户的年龄

时间:2016-08-09 05:51:01

标签: javascript jquery datepicker

我有一个datepicker函数,应该检查18岁以上的用户是否。如果没有,则会出现提示符。

这就是我现在所拥有的,但它并没有像我想要的那样工作 - 我正确地使用了用户的年龄但不是按月计算,而是按年份计算不准确:

pikaday.js

我想要它做的是让16岁及以上的人展示提示器。 17,也应该提示那些年满18岁但尚未通过他们的出生日期的人,因为他们仍然是17岁。

2 个答案:

答案 0 :(得分:2)

试试这个。

$('#dob2').datepicker("option", "onSelect", function(dateText, inst) {
    var dob = $(this).datepicker('getDate');
    var age = GetAge(dob);
    if (age >= 16 && age < 18) {
        alert("The minimum age requirement for supplementary card applicant is 18 years old. For applicant aged 16 and 17, and are going overseas to study, please submit the letter of acceptance from the education institution.");
    }
});

function GetAge(birthDate) {
    var today = new Date();
    var age = today.getFullYear() - birthDate.getFullYear();
    var m = today.getMonth() - birthDate.getMonth();
    if (m < 0 || (m === 0 && today.getDate() < birthDate.getDate())) {
        age--;
    }
    return age;
}

答案 1 :(得分:0)

为我工作

    $("#FechaNacimientoDate").change(function () {
        var today = new Date();
        var birthDate = new Date($(this).datepicker('getDate'));
        var age = today.getFullYear() - birthDate.getFullYear();
        var m = today.getMonth() - birthDate.getMonth();
        if (m < 0 || (m === 0 && today.getDate() < birthDate.getDate())) {
            age--;
        }

        return $('#Edad').val(age);
    });