尝试使用JavaScript将日期添加到日期时出错

时间:2014-03-11 20:03:52

标签: javascript jquery date

我编写了以下脚本,以便在给定日期添加天数:

$("#rec_days").change(function(){                    
    var start_date = new Date($("#start_date").attr('value'));                                    
    var rec_days = $("#rec_days").attr('value');
    var end_date = new Date(start_date).setDate(start_date.getDate() + rec_days); 
    $("#end_date").val(end_date.getFullYear() + '-' + end_date.getMonth() + '-' . end_date.getDate());                                    
}); 

控制台记录以下错误:" TypeError:end_date.getFullYear不是函数"。

输入日期是YYYY-MM-DD,我希望输出日期格式相同。

我做错了什么?

2 个答案:

答案 0 :(得分:0)

` 试试这个

var end_date = new Date(start_date);
end_date.setDate(start_date.getDate() + parseInt(rec_days)); //the problem was because of this line. the addition was not proper. use parseInt to convert to int.

$("#end_date").val(end_date.getFullYear() + '-' + (end_date.getMonth() + 1) + '-' + end_date.getDate());   

答案 1 :(得分:0)

你可以试试这个:

$("#rec_days").change(function(){                    
    var start_date = new Date($("#start_date").val());                                    
    var rec_days = parseInt($("#rec_days").val());
    var end_date = new Date(start_date);
    end_date.setDate(start_date.getDate() + rec_days); 
    $("#end_date").val(end_date.getFullYear() + '-' + (end_date.getMonth()+1) + '-' + end_date.getDate());                                    
}); 

这里是fiddle