出生日期和年龄以mvc为单位

时间:2013-08-30 06:20:06

标签: jquery asp.net-mvc jquery-ui-datepicker

我有两个字段DOB,Age 对于DOB:日期选择器 对于年龄:文本框

每当在DOB中选择日期时,它会自动计算年龄。

我的剧本:

$('#DOB').datepicker({
            language: 'es',
            todayBtn: 'linked',
            format: "dd/mm/yyyy",
            onSelect: function (selectedDate,ev) {
                alert(selectedDate);
                var urls = "/Controllername/GetAge?date=" + selectedDate;
                $.ajax({ url: urls,
                    success: function (data) {
                       alert(data);
                    }
                 });
            }
        }).on('changeDate', function (ev) {
            $(this).blur();
            $(this).datepicker('hide');
        }); ;

alert(selectedDate)未触发。 ajax调用没有解雇?

2 个答案:

答案 0 :(得分:2)

试试这个

 $('#DOB').datepicker({
        language: 'es',
        todayBtn: 'linked',
        format: "dd/mm/yyyy"
    }).on('changeDate', function (ev) {
        $(this).blur();
        $(this).datepicker('hide');
        var dob = new Date(ev.date);
        var d = new Date();
        var age = d.getFullYear() - dob.getFullYear();
     });

答案 1 :(得分:1)

如果您希望仅在年内找到js的年龄

DEMO

function GetDateDiff(date1, date2) {
    return Math.floor(Math.abs((date1.getTime() - date2.getTime()) / (1000 * 60 * 60 * 24)) / 365);
}
var d = new Date();
$('#DOB').datepicker({
    language: 'es',
    todayBtn: 'linked',
    format: "dd/mm/yyyy",
    onSelect: function (selectedDate, ev) {
        var x = selectedDate.split('/');
        var dob = new Date(x[0] + ',' + x[1] + ',' + x[2]);
        alert(GetDateDiff(dob, d));
    }
});