Сегодняшняя дата и следующие 2 дня без отображения выходных — отображение в опции выбора

#javascript #jquery #date

#javascript #jquery #Дата

Вопрос:

Могу ли я запросить проверку кода о том, как я могу отключить / не показывать выходные в раскрывающемся списке выбора?

 <select style="font-family:Arial, Helvetica, sans-serif; font-size:14px; color:#000;" name="address3" id="date-range" data-field-type="Text">
  <option value="" selected="selected">Select date</option>
</select>

<script>
  var dateRange = document.getElementById('date-range'),
  monthNames = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];

  for(var day = 2; day < 120; day  ) {
    var date = new Date();
    
    date.setDate(date.getDate()   day);

    dateRange.options[dateRange.options.length] = new Option(
        [date.getDate(), monthNames[date.getMonth()], date.getFullYear()].join(' '), date.toISOString()
      );
    }

</script>
 

Комментарии:

1. Работает ли ваш код в течение дней, превышающих 31?

Ответ №1:

 var dateRange = document.getElementById('date-range'),
    monthNames = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];

for(var day = 3; day < 120; day  ) {
  var date = new Date();
  date.setDate(date.getDate()   day);
   if(!(date.getDay()==6|| date.getDay()==0))
        dateRange.options[dateRange.options.length] = new Option([date.getDate(), monthNames[date.getMonth()], date.getFullYear()].join(' '), date.toISOString());
} 
  <select style="font-family:Arial, Helvetica, sans-serif; font-size:14px; color:#000;" name="address3" id="date-range" data-field-type="Text">
   <option value="" selected="selected">Select date</option>
 </select> 

Комментарии:

1. Отлично. Спасибо 🙂