我想从日期选择器中添加X个月到我选择的日期,从我的下拉列表中添加月数,我使用下面的代码:
$('#start_date').change(function(){
var months = $('#month_number').val();
var end = new Date($(this).val());
end.setMonth(end.getMonth() + months);
$('#date_hid_m').val( (end.getMonth() + 1) + '/' + end.getDate() + '/' + end.getFullYear()) ;
但结果不正确。例如:如果我的开始日期是:2016年5月28日,我想增加6个月,结果显示11/28/2019 !!!
答案 0 :(得分:1)
在您的代码中months
是一个字符串,因为它的值是从input
文本元素中检索的。因此,它的值会 连接 到end.getMonth()
,而不是作为数字添加。你得到56(= 5 +'6')月,而不是11(= 5 + 6)个月。
通过将字符串转换为带有+
:
var months = +$('#month_number').val();