我可以为当月的某个月中的任何日期添加日期。但是,如果我选择一个说2014-06-26
的到达日期,然后选择7
个晚上(将其转到下个月),它会对这些日期进行正确的添加,但会将其添加为月份是当月2014-05-26
。我没有正确地添加日期吗?
$('#nights').blur(function() {
var date = new Date();
var arrival = parseDate($('#arrivaldate').val());
var nights = parseInt($('#nights').val());
date.setDate(arrival.getDate()+nights);
console.log(date);
//convert date
var mon = date.getMonth()+1;
console.log(mon);
var year = date.getFullYear();
var day = date.getDate();
mon = mon < 10 ? "0"+mon : mon;
day = day < 10 ? "0"+day : day;
$('#departdate').val(year+'-'+mon+'-'+day);
});
答案 0 :(得分:1)
正如@CBroe在评论中指出的那样。
var date = new Date();
已从当前时间
date
date.setDate(arrival.getDate()+nights);
将date
中的某一天设置为arrival
中的某一天,并添加了+晚。
如果今天是5月,date
是5月,如果arrival
是6月,则第2行不会将date
中的月份设置为6月。
试试这个:
var arrival = parseDate($('#arrivaldate').val());
var depart = new Date(arrival);
var nights = parseInt($('#nights').val());
depart.setDate(arrival.getDate()+nights);
console.log(depart);