1
我正在使用jquery datepicker为我的应用程序。刷新datepicker后selectse
我想突出显示用户选择的日期。 用户将选择一个日期,并将该日期作为假日添加到数据库中,并且日期应该高亮显示。我已经在使用beforeShowDay事件之前会突出显示数据库中的某些日期,并且我还禁用了周末。
一切工作正常,但我无法在将它添加到数据库后突出显示该日期。只有当我重新加载日历时才会突出显示。
我在互联网上搜索,但没有得到任何明确的想法,许多地方建议使用multidatepicker,但重点是在我只选择一个日期添加到数据库,然后选择其他。
请建议我在哪里出错。 我的代码is--
var dates = [ <? php echo $holidays; ?> ];
$(document).ready(function() {
$("#calendardisplay").datepicker({
dateFormat: 'yy-mm-dd',
beforeShowDay: highlightDays,
onSelect: dateSelected
});
function dateSelected(dateText, inst) {
$.post('/postChannelHoliday.php', {
'date': dateText
}, function (data) {
alert('Successfully Added');
});
}
}
function holiday(date) {
for (var i = 0; i < dates.length; i++) {
if (new Date(dates[i]).toString().substr(0, 16) == date.toString().substr(0, 16)) {
return [true, 'ui-state-highlight'];
}
}
return [true, ''];
}
function highlightDays(date) {
var noWeekend = $.datepicker.noWeekends(date);
if (noWeekend[0]) {
return holiday(date);
} else {
return noWeekend;
}
}
});
我包括一个PHP文件来获得存储在数据库中的日期来突出他们在日历相反
你的缩进确实很可怕。 – ThiefMaster 2012-04-05 08:51:39
'var dates = [<? php echo $ holidays; ?>];'看起来非常糟糕。你有没有听说过'json_encode()'?你可以简单地使用'var dates = <?php echo json_encode($ holidayArray); ?>;并且它始终是有效的JavaScript - 无论数组包含什么。 – ThiefMaster 2012-04-05 08:53:00
@ThiefMaster - 但你能告诉我如何突出显示用户在数据库中添加的日期而无需刷新,或者需要刷新我的代码 – Priyanka 2012-04-05 09:03:21