jQuery Datepicker выбор отключенной даты

#jquery #datepicker #jquery-ui-datepicker

#jquery #datepicker #jquery-ui-datepicker

Вопрос:

У меня есть jQuery datepicker, где я устанавливаю дату по умолчанию на сегодняшнюю дату 15 дней.
Я также сделал так, чтобы пользователь не мог выбрать дату, которая приходится на выходные. Однако, когда я реализую следующий код, он позволяет выбрать отключенную дату выходных.
Вопрос: Как я могу сделать так, чтобы он выбирал следующую доступную дату?

 $.datepicker.setDefaults(
  $.datepicker.regional["fi-FI"]);

$('.datepicker').wijtextbox().datepicker({
  beforeShowDay: $.datepicker.noWeekends
});

$('.datepicker').datepicker('setDate',  15);
  

Приведенный выше код по умолчанию равен 10 октября, то есть субботе, которая отключена. Как мне заставить его выбрать следующую доступную дату, которая будет понедельником, 12 октября?

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

1. Вы не сможете использовать noWeekends , что, очевидно, отключает эти даты. Вам нужно будет написать пользовательскую функцию (возможно, включающую noWeekends() определение выходных дней) и сдвинуть возвращаемую дату.

Ответ №1:

Перед использованием setDate проверьте, выдает ли ваше произвольное значение 15 Sat. Или Sun. , и если да, добавьте еще 1 или 2 к setDate

 const mydate = new Date();
mydate.setDate(mydate.getDate()   15);

if(mydate.getDay() == 6){ //Sat. add 2 more days
   $('.datepicker').datepicker('setDate',  17);
} else if(myDate.getDay() == 0){ //Sun add 1 more day
   $('.datepicker').datepicker('setDate',  16);
}else{
   $('.datepicker').datepicker('setDate',  15);
}