JQuery DatePicker中beforeShowDay方法无法高亮指定日期问题求助
JQuery DatePicker中beforeShowDay方法无法高亮指定日期问题求助
我现在快急死了,完全搞不懂beforeShowDay为啥不按我预期的工作。我想把从数据库(通过Ajax获取)里拿到的某些日期高亮显示,但怎么都没效果,不管换哪种日期格式,这些日期就是不高亮。
我的代码情况:
HTML部分
我是这样调用日历的:
<div class="calendar" id="Date" ></div>
Ajax获取日期数组部分
我通过Ajax拿到日期数组的代码是这样的:
var days_custom = []; URL = 'get_date.php'; $.ajax({ type: "GET", url: URL, dataType: 'json', success: function(data) { for (var t in data) { days_custom[days_custom.length] = data[t].date } console.log(days_custom); } });
控制台里显示的日期格式是这样的:
['2024-05-05', '2024-05-07', '2024-05-08', '2024-05-09', '2024-05-11', '2024-05-12', '2024-05-13', '2024-05-14', '2024-05-15', '2024-05-17', …]
DatePicker配置部分
接下来我尝试用这些日期来修改背景色,实现高亮:
$("#Date").datepicker({ dateFormat: 'yy-mm-dd', beforeShowDay: function(date) { t_date = $.datepicker.formatDate('yyyy-mm-dd', date); if (days_custom.indexOf(t_date) > -1) { return [true, 'event', 'test highlight']; } return [true]; } });
CSS样式部分
我的CSS文件里写了这个样式:
.event a { background-color: #5FBA7D !important; color: #ffffff !important; }
遇到的问题
完全没效果!我甚至在beforeShowDay函数里加了控制台输出,但什么都没显示,我都怀疑这个函数根本没执行过。另外我还试过在初始化日期选择器前先销毁它(之前看别的问题里有人这么做),但也没用,后来就删掉了那部分代码。
求各位大佬帮忙看看问题出在哪!
备注:内容来源于stack exchange,提问作者Drizzt9781
相关产品推荐
相关产品推荐

