イベントの種類に応じて、またはその日に満席の場合は、利用できない日付を異なる色で表示する必要があります。
[2012,7, 15, 'Some events']
以下の例では、データベースから日付をフェッチし、それらを配列としてJavaScriptに渡します。現在、Year、Month、Day、Yearsなどの配列で4つのパラメーターを渡しています 。この配列を変更して、5番目のパラメーターをcolorとして渡すようにします[2012,7, 15, 'Some events', 'Red']
。イベントの種類に基づいてセルの色を変更できるようにします。
以下のスクリプトをどのように変更して機能させるかはわかりません。たとえば探しましたが、一致するものが見つかりませんでした。私はスクリプトの第一人者ではないので、この点で助けていただければ幸いです。
function BindEvents()
{
//Script for Calendar
var holiDays = [[2012,7, 15, 'Some events'],[2012,7, 4, 'Some Event'],[2012,7, 1, 'Full Booked'],[2012,7, 5, 'Full Booked']];
$(function () {
$("#txtBookDate").datepicker({
dateFormat: "yy-mm-dd",
minDate: "-0d",
maxDate: "+90d",
firstDay: 0,
beforeShowDay: noWeekendsOrHolidaysOrBlockedDates
});
function noWeekendsOrHolidaysOrBlockedDates(date) {
//var noWeekend = jQuery.datepicker.noWeekends(date);
return setHoliDays(date);
}
// set holidays function which is configured in beforeShowDay
function setHoliDays(date) {
var day = date.getDay();
if (day == 5 || day ==6) return [false, ''];
for (i = 0; i < holiDays.length; i++) {
if (date.getFullYear() == holiDays[i][0]
&& date.getMonth() == holiDays[i][1] - 1
&& date.getDate() == holiDays[i][2]) {
return [false, 'holiday', holiDays[i][3]];
}
}
return [true, ''];
}
});
}
BindEvents();