使用JavaScript显示日期+3个月
Display date + 3 months using JavaScript?
我继承了一个表单,该表单有一些现有的JavaScript,可以创建一个新的日期+3个月后的日期。
var monthAway = new Date(new Date);
var day =monthAway.getDate();
var month =monthAway.getMonth() + 3;
var year =monthAway.getFullYear();
$('#Date_for_Second_Store_Access_to_Expire').val(day + "/" + month + "/" + year);
<p><input id="Date_for_Second_Store_Access_to_Expire" type="hidden" name="Date_for_Second_Store_Access_to_Expire" class="required" /></p>
问题是,如果今天的日期是10月、11月或12月,则新的日期月份将是13、14或15,而不是更新为1、2或3,然后更新年份,例如2014年11月5日是2014年5月14日,而不是2015年2月5日。
有什么想法吗?
试试这个:
var x = 3; //or whatever offset
var CurrentDate = new Date();
CurrentDate.setMonth(CurrentDate.getMonth() + x);
alert(CurrentDate);
使用setMonth方法向monthAway
变量添加3个月,如下所示
monthAway.setMonth(monthAway.getMonth() + 3);
则简单地使用修改后的CCD_ 2来显示到期日期。请注意,getMonth()方法将返回0-11,其中0是一月,1是二月,11是12月,所以你需要这样做来显示正确的月份
var month = monthAway.getMonth() + 1;
这是完整的修改代码,假设代码今天执行(5/11/2014
),则#Date_for_Second_Store_Access_to_Expire
的值将为5/2/2015
。
var monthAway = new Date(new Date);
monthAway.setMonth(monthAway.getMonth() + 3); // add 3 months to monthAway
var day = monthAway.getDate();
var month = monthAway.getMonth() + 1; // add 1 because .getMonth returns zero based month
var year = monthAway.getFullYear();
$('#Date_for_Second_Store_Access_to_Expire').val(day + "/" + month + "/" + year);
<p><input id="Date_for_Second_Store_Access_to_Expire" type="hidden" name="Date_for_Second_Store_Access_to_Expire" class="required" /></p>
这是显示上述代码中day + "/" + month + "/" + year
值的JSFiddle:http://jsfiddle.net/jwa6o6r2/
增加month
变量时只需进行简单检查:
var month = monthAway.getMonth() + 3;
if(month > 12) //If it crosses 12, start from 1 again.
month -= 12;
更改
var month = monthAway.getMonth() + 3;
至
var month = ((monthAway.getMonth() + 3) % 12) + 1;
((monthAway.getMonth() + 3) % 12)
会给你一个从0到11的数字。既然你想要1-12,那就是+ 1
的用武之地
对于年份问题,请尝试以下
var year = (month <= 3 ? monthAway.getFullYear() + 1 : monthAway.getFullYear());
这将检查月份是否小于或等于3,这只有在你结束后才可能。
相关文章:
- 通过将6个月添加到今天来获得最后一个月的日期's日期
- 在javascript中,起始日期不得早于13个月
- JavaScript:获取第一个月前 6 个月的日期的最简单方法
- 如何使用jquery获取下一天的日期和下个月的日期
- Later.js-下个月同一日期
- Javascript日期对象:从5月31日跳到下个月得到7月1日
- 如何在javascript中检查日期是否在本周、本月或下个月内
- jQuery UI 日期选择器:向另一个日期选择器添加 6 个月
- 如何在 javascript 中以 YYYYDDMM 格式有效地获取三个月前的日期
- 如何使用JQXDateTimeInput设置日期时添加6个月并减去日期
- 增加下个月的 JavasScript 日期对象,当天数增加时
- 角度JS显示+1个月日期
- 如何从当前日期值中减去 24 个月并将其分配给另一个变量
- 使用JavaScript显示日期+3个月
- Javascript-获取前几个月的日期
- 如何在javascript中筛选日期以仅获取最近4个月的日期
- javascript选择一个日期和下一个自动设置的3个月的差异
- 在javascript中查找第n个月之后的日期
- 将生效日期从行更改为下个月自动
- Javascript函数,它接受一个月/日期并显示12个月/日期