【发布时间】:2019-03-12 07:13:14
【问题描述】:
我们需要什么:
示例客户开始日期是 2019 年 3 月 11 日 - 28 个工作日等于 4 月 18 日,4 月 18 日成为第 1 个月的结束日期,第 2 个月的开始日期是 4 月 18 日(第 1 个月结束日期 + 1)等于 19 日4 月,然后第 2 个月的结束日期是 +28 个工作日……以此类推,在接下来的 12 个月中,我们需要结束日期和开始日期。
我们也可以让它只显示日期而不是(时间和greenwhich)在日期结束时
到目前为止,我有一个简单的 js 28-工作日脚本可以工作......但我不知道如何做复杂的部分,我尝试用 html 抓取元素并重新执行脚本,但它没有按计划工作。
愿有人帮助解决这个问题。非常感谢。
var startDate = "2019-03-11";
startDate = new Date(startDate.replace(/-/g, "/"));
var endDate = "", noOfDaysToAdd = 28, count = 0;
while(count < noOfDaysToAdd){
endDate = new Date(startDate.setDate(startDate.getDate() + 1));
if(endDate.getDay() != 0 && endDate.getDay() != 6){
count++;
}
}
document.getElementById("month1end").value = endDate;
【问题讨论】:
-
每个月不一定有28个工作日...所以一个月末加上28个工作日并不一定就是第二个月的最后一个工作日。
-
@terry 我知道,这很好,但我需要能够获得第 1 个月的结束日期并添加 1 天,然后计算日期(从该日期起 28 个工作日)和将其显示为第 2 个月结束.. 等等 12 个月的预测
-
你知道最终会与月份不同步,对吧? “结束日期”是指最后一个工作日吗?最后一个日历日?
-
工作日是周一到周五。没有一个月你有 28 天。我认为您需要更详细地描述您的要求,或者提供某种图形/图表/示例来向我们展示您的实际需求。
-
太好了:现在将这些信息放在您的问题中,以便其他人可以实际看到它,而无需通过 cmets 线程。
标签: javascript