JQuery / Javascript添加日期以选择但不包括星期日

时间:2017-06-04 18:59:24

标签: javascript

我想在选择中添加5个日期,但不包括星期日。如果在星期日登陆的日期显示第二天的日期。

这是我到目前为止所尝试的:

var startDate = "6-JUN-2017";
    startDate = new Date(startDate.replace(/-/g, "/"));
    var Dates = "",  noOfDaysToAdd = 5, count = 0;
    while (count < noOfDaysToAdd) {
        Dates = new Date(startDate.setDate(startDate.getDate() + 1));
        if (Dates.getDay() != 0 && Dates.getDay() != 7) {
            //    count++;
            var Day = $('<option value="' + Dates.getDay() + '">' + Dates.getDay() + '</option>');
            $('select').append(Day);
        }

    }

但这会导致我的浏览器崩溃。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

您的代码几乎可以使用。但是,你需要增加计数,如果你不这样做,你将有一个无限循环。正如你所说,如果这一天是星期天,你想增加一天:

while (count < noOfDaysToAdd) {
    startDate.setDate(startDate.getDate() + 1);
    if (startDate.getDay() === 0) {
     //if sunday take next day
     startDate.setDate(startDate.getDate()+1);
    }
   //always add:
    var Day = $('<option value="' + startDate.getDay() + '">' + startDate.getDay() + '</option>');
    $('select').append(Day);
 count++;//no crashing
}

此外,无需克隆startDate ...