将未来的日子添加到周日不包括JavaScript



我有以下JavaScript代码,该代码允许用户从今天的日期开始选择四天。

$(function() {
  var dtToday = new Date();
  var month = dtToday.getMonth() + 1;
  if (dtToday.getDay() === 0) {
    var day = dtToday.getDate() + 5;
  } else {
    var day = dtToday.getDate() + 4;
  }
  var year = dtToday.getFullYear();
  if (month < 10)
    month = '0' + month.toString();
  if (day < 10)
    day = '0' + day.toString();
  var maxDate = year + '-' + month + '-' + day;
  $('.datepicker').attr('max', maxDate);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

我希望代码跳过周日,同时将未来的日子增加四个。我尝试使用IF语句,但他们只检查今天的日期是星期日,而我想达到一个情况,如果未来的4天是星期日,则应该跳过它。谢谢

如果今天是星期三(3),星期四(4),星期五(5)或星期六(6),那么您的4天窗口将包括周日(因此,您应该添加1个到几天)。这样做:

var day = dtToday.getDate() + 4;
if(dtToday.getDay() > 2) {
    day += 1;
}

,您的脚本将是:

$(function(){
        var dtToday = new Date();
        var month = dtToday.getMonth() + 1;
        var day = dtToday.getDate() + 4;
        if(dtToday.getDay() > 2) {
            day += 1;
        }
        var year = dtToday.getFullYear();
        if(month < 10)
            month = '0' + month.toString();
        if(day < 10)
            day = '0' + day.toString();
        var maxDate = year + '-' + month + '-' + day;
        $('.datepicker').attr('max', maxDate);
    });

最新更新