我现在已经阅读了很多主题,并没有找到一个非常重要的主题。
这就是我要做的事情:
1)解析以mm / dd / yy格式提供的账单日期,并且通常不是今天的
2)在日期中添加可变天数。这些术语保存在下面的dueTime数组中。我把它限制在这里30天
3)根据账单日期+付款条件,计算账单到期日期,并以mm / dd / yy格式返回。
这是我尝试过的。我传递给新日期的信息是我所期望的,但新日期的输出绝不是我所期望的。
感谢您的帮助。
<html>
<head>
<script>
function calculateDueTime(){
var billDate = document.getElementById('billDateId').value;
var key = document.getElementById('termsId').value;
var dueTime = new Array();
dueTime[1] = 30;
var billDate = billDate.split('/');
var newDate = new Date( parseInt( billDate[2] ) + '/' + parseInt( billDate[0] ) + '/' + ( parseInt( billDate[1] ) + parseInt( dueTime[key] ) ) );
document.getElementById('dueDateId').value = newDate.toString();
}
</script>
</head>
<body>
<input name="billDate" id="billDateId" value="5/1/11" />
Or any value in mm/dd/yy or m/d/yy format
<select name="terms" id="termsId" onchange="calculateDueTime()">
<option value="1">Net 30</option>
</select>
<input name="dueDate" id="dueDateId" />
</body>
</html>
答案 0 :(得分:5)
只需添加日期天数:
var dt= new Date();
dt.setDate(dt.getDate() + 31);
console.log(dt);
答案 1 :(得分:1)
我建议看看Datejs(http://www.datejs.com/)。我使用这个库来处理日期,我觉得这是一个真正的痛苦。