В моем проекте я сохраняю праздники со стороны администратора, и значение хранится в таблице базы данных. sunday,monday,friday
, Я использовал следующий код для их извлечения.
$da = array(10, 10, 10, 10, 10, 10, 10);
$holidays = explode(',', $data['dates']);
for ($i = 0; $i < count($holidays); $i++) {
switch($holidays[$i]) {
case 'sunday':
$da[$i] = 0;
break;
case 'monday':
$da[$i] = 1;
break;
case 'tuesday':
$da[$i] = 2;
break;
case 'wednesday':
$da[$i] = 3;
break;
case 'thursday':
$da[$i] = 4;
break;
case 'friday':
$da[$i] = 5;
break;
case 'saturday':
$da[$i] = 6;
break;
}
}
И мой сценарий:
$(function() {
$("#datepicker").datepicker({
beforeShowDay: DisableMonday
});
});
function DisableMonday(date) {
var day = date.getDay();
var tooltipDate='holiday !';
return [(day != <?php echo $da[0];?> && day != <?php echo $da[1];?> && day != <?php echo $da[2];?> && day != <?php echo $da[3];?> && day != <?php echo $da[4];?> && day != <?php echo $da[5];?> && day != <?php echo $da[6];?>),'',tooltipDate];
}
и HTML это:
<?php
if (Session::get('dates')){
echo Form::text('date', Session::get('dates'), array('id'=> 'datepicker'));
}
else {
echo Form::text('date', '', array('id'=> 'datepicker'));
}
?>
var_dump
из $da
для значения db воскресенье, понедельник, пятница:
array(7) { [0]=> int(0) [1]=> int(1) [2]=> int(5) [3]=> int(10) [4]=> int(10) [5]=> int(10) [6]=> int(10) }
Вывод, который я получаю, это обычный календарь. дни недели не отключены.
Если кто-либо обнаружит какие-либо ошибки в моем коде, пожалуйста, помогите мне исправить его.
Задача ещё не решена.
Других решений пока нет …