Javascript 选择日期时如何更改特定值?

Javascript 选择日期时如何更改特定值?,javascript,jquery,tapestry,Javascript,Jquery,Tapestry,要求是我有两个日期字段: 一个是生效日期和出生日期。当我在页面上选择生效日期时。 年龄字段应进行以下计算。 即年龄将是生效日期-出生日期。结果应设置为“年龄”字段 如何在javascript或JQuery中执行 我正在使用tapestry前端。因此,在HTML页面中,我想对年龄字段的值进行设置。您需要将日期转换为毫秒并减去它们,然后计算年龄 HTML 查看此..添加一个提琴,无论您使用什么作为库。jquery datepicker应该可以使用您已经尝试过的东西,plz。 <input

要求是我有两个日期字段:

  • 一个是生效日期和出生日期。当我在页面上选择生效日期时。
    年龄字段应进行以下计算。
    即年龄将是生效日期-出生日期。结果应设置为“年龄”字段
如何在javascript或JQuery中执行


我正在使用tapestry前端。因此,在HTML页面中,我想对年龄字段的值进行设置。

您需要将日期转换为毫秒并减去它们,然后计算年龄

HTML


查看此..

添加一个提琴,无论您使用什么作为库。jquery datepicker应该可以使用您已经尝试过的东西,plz。
<input type="date" id="effective" />
<input type="date" id="born" />
function getTime(date){
    var dateArr = date.split('-');
    return new Date(dateArr[0], dateArr[1], dateArr[2]).getTime();
}
function calcDate(date1,date2) {
    var eff_date = getTime(date1);
    var born_date = getTime(date2);

    var diff = Math.floor(eff_date - born_date);

    var day = 1000* 60 * 60 * 24;

    var days = Math.floor(diff/day);
    var months = Math.floor(days/31);
    var years = Math.floor(months/12);
    return years
}

$("input[type=date]").change(function(){
    if($("#effective").val() != "" && $("#born").val() != ""){
        var age = calcDate($("#effective").val(),$("#born").val())
        alert(age);
    }
});