我正在尝试使用js在给定日期中添加月份数。 fd_start_date具有开始日期,但是moment.js返回“无效日期”。我正在使用日期选择器以YYYY-MM-DD格式选择日期。
$('#fd_start_date').click(function () {
var start_date=$("#fd_start_date").val();
var no_of_months=$("#fd_duration").val();
var currentDate = moment(start_date);
var future_date = moment(currentDate).add(no_of_months, 'months');
console.log(future_date);
});
答案 0 :(得分:3)
您可以通过以下方式实现此目的:
// Getting the current moment
const currentTime = moment()
// Adding a month to it
const futureMonth = currentTime.add(1, 'M');
console.log(futureMonth)
<script src="https://rawgit.com/moment/moment/2.2.1/min/moment.min.js"></script>
答案 1 :(得分:2)
如果我更改为输入并在“月”字段中有一个值,则对我有用
$('#fd_start_date, #fd_duration').on("input",function() {
var start_date = $("#fd_start_date").val();
if (start_date) {
var no_of_months = $("#fd_duration").val();
var currentDate = moment(start_date);
var future_date = moment(currentDate).add(no_of_months, 'months');
console.log(future_date);
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>
<input type="date" id="fd_start_date" /><input type="number" id="fd_duration" value="1" />
答案 2 :(得分:0)
我正在我的项目中使用它,这种逻辑对我来说很好用。
$ scope.o.DateOfBirth =“ 31/03/2021”;
var currentDate = moment($ scope.o.DateOfBirth,'DD / MM / YYYY')。format('YYYY-MM-DD');
var futureMonth = moment(currentDate).add(24,'month')。format(“ YYYY-MM-DD”);
console.log(currentDate.format('DD-MM-YYYY'));
console.log(futureMonth.format('DD-MM-YYYY'));
输出:“ 2023-03-31”