3

我正在研究FullCalendar。在这个线程之后,我可以从我页面上的日期选择器中选择一个特定的日期。

我在周视图中显示 FullCalendar。我的问题是,在周视图中,我无法fc-state-highlight在我去的日期申请课程。即使这周有我需要的日期,它也从不突出显示。

但是,我可以通过使用从当前日期删除同一类

$('.fc-today').removeClass('fc-state-highlight');

我需要将上述课程添加到我的最新课程中。

任何帮助将不胜感激。

编辑:我自己发布了解决方案。

4

2 回答 2

6

好的,伙计们,我为我的问题找到了解决方案。

按照FullCalendar 网站上的文档dayRender(),我使用回调方法解决了我的问题。

上述方法有两个参数date- 和cellbasicWeek第一个在视图中存储一周中的所有天数。所以,鉴于我需要的日期存储在一个变量reqDate中,我做了这样的事情:

$('#my-div').fullCalendar({
    year: reqDate.getFullYear(),
    month: reqDate.getMonth(),
    date: reqDate.getDate(),
    dayRender: function(daysOfWeek, cell)
    {
        if(reqDate.getDate()==daysOfWeek.getDate())
        {
            $(cell).addClass('fc-state-highlight');
        }
        else
        {
            $(cell).removeClass('fc-state-highlight');
        }
    }
});

而已 :)

于 2013-11-05T09:41:10.747 回答
1

您可以在 onload 和 prev 和 next 按钮期间创建新事件。

该功能应检查当前周,例如,

$( "table.fc-agenda-days" ).hasClass( "td.fc-today" )

or

if ($("table.fc-agenda-days").find("td.fc-today").length > 0){ 
    $("table.fc-agenda-days td.fc-widget-content").addClass('fc-state-highlight');
}

希望这可以帮助。

于 2013-11-05T08:02:22.703 回答