我正在尝试基于月份变量添加月份到日期,但是当我尝试从输入字段获取月份并传递它时,我得到错误的结果。如果我自己定义一个变量并将其传递给setMonth,我会得到正确的结果。
这是代码:
当我使用静态值时:
.on('changeDate', function(e){
var datea = new Date(e.date);
console.log(datea);
// var montha = $('#duration').val();
// console.log(montha);
montha = 3 ;
datea.setMonth(datea.getMonth()+ montha);
datea = datea.getDate() + "/" + datea.getMonth() + "/" + datea.getFullYear();
console.log(datea);
$('#end_date').val(datea);
});
控制台输出:
Sat Apr 01 2017 00:00:00 GMT+0530 (India Standard Time)
1/6/2017
你可以看到它打印出正确的输出
但是如果我尝试从输入字段中提取月份值
.on('changeDate', function(e){
var datea = new Date(e.date);
console.log(datea);
var montha = $('#duration').val();
console.log(montha);
datea.setMonth(datea.getMonth()+ montha);
datea = datea.getDate() + "/" + datea.getMonth() + "/" + datea.getFullYear();
console.log(datea);
$('#end_date').val(datea);
});
控制台输出:
Sat Apr 01 2017 00:00:00 GMT+0530 (India Standard Time)
3
1/9/2019
即使montha的值为3,输出结果也不正确。
请帮我解决这个问题