我有一些布尔值存储在MySQL数据库中以供用户使用:
$available_monday = $settings['available_monday'];
$available_tuesday = $settings['available_tuesday'];
$available_wednesday = $settings['available_wednesday'];
$available_thursday = $settings['available_thursday'];
$available_friday = $settings['available_friday'];
$available_saturday = $settings['available_saturday'];
$available_sunday = $settings['available_sunday'];
如果上述任何一项的值为true,则该用户当天可用。
我希望在datepicker日历上显示可用日期。
我知道我首先需要将可用日期添加到数组中。
var daysAvailable = $.parseJSON('<?php echo json_encode($availableDates); ?>');
这是我感到困惑的地方。下面的代码适用于特定的yy-mm-date,但我希望按星期几(星期一,星期二等)进行。
如何根据用户的可用性更改它以阻止日期?
$('#date').datepicker({
beforeShowDay: function(date) {
if($.inArray($.datepicker.formatDate('yy-mm-dd', date ), daysAvailable) > -1) {
return [false, "highlighted", "Booked out"];
} else {
return [true, "", "available"];
}
}
});
答案 0 :(得分:1)
您可以使用日期类的getDay()方法,如下所示:
var days = [
"Sunday",
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday"
];
$('#date').datepicker({
beforeShowDay: function(date) {
if($.inArray(days[date.getDay()], daysAvailable) > -1) {
return [true, "", "available"];
} else {
return [false, "highlighted", "Booked out"];
}
}
});
这假设daysAvailable采用以下格式:
var daysAvailable = [
"Monday",
"Wednesday",
"Friday"
]