Jquery UI date Picker отключить включение воскресенья, четверга и отключить определенные даты
Я пытаюсь включить только четверги и воскресенья, но также отключить некоторые конкретные воскресенья или четверги. Я пытаюсь с этой функцией, но она еще не работает:
<script>
var unavailableDates = ["2013-03-31", "2013-03-24"];
function disabledays(date) {
ymd = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate();
if ($.inArray(ymd, unavailableDates) == 0) {
return [false, "", "Unavailable"]
} else {
//Show only sundays and thuersdays
var day = date.getDay();
return [(day == 0 || day == 4)];
}
$('#txtDate').datepicker({
beforeShowDay: disabledays
})
</script>
1 ответ
Решение
Две проблемы:
Код, который создает строку даты, не добавляет
0
в месячной части. Вы можете изменить свойunavailableDates
массив.Вам нужно проверить возвращаемое значение
$.indexOf
чтобы увидеть, если это>=
0 вместо просто равно нулю.
С обоими изменениями:
var unavailableDates = ["2013-3-31", "2013-3-24"];
function disabledays(date) {
var ymd = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate();
if ($.inArray(ymd, unavailableDates) >= 0) {
return [false, "", "Unavailable"];
} else {
//Show only sundays and thuersdays
var day = date.getDay();
return [(day == 0 || day == 4)];
}
}
$('#txtDate').datepicker({
beforeShowDay: disabledays
});
Пример: http://jsfiddle.net/XJKbV/