#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);
}