在fullcalendar中添加有关事件的更多信息

时间:2011-12-29 03:10:58

标签: javascript jquery fullcalendar

如何向特定视图添加更多信息?

我想通过mysql表中的dayAgenda视图显示有关我的事件的更多信息(已经存储到我的json-events.php的数组中的值)。

我阅读了fullcalendar的文档,特别是有关eventRender的文档,但我不明白代码的解释。

拜托,我该怎么办?感谢。

3 个答案:

答案 0 :(得分:5)

您可以使用eventRender回调提供自己的呈现逻辑:

eventRender: function(event, element, view) {
    if (view.name === "agendaDay") {
        element.find(".fc-event-content")
            .append("<b>Description</b>:" + event.description);
    }
}

description是您的自定义事件属性之一。您可能必须根据此人当前所处的视图更改渲染逻辑。

示例: http://jsfiddle.net/LjCV9/(点击日历右上角的按钮)

答案 1 :(得分:1)

知道在任何可以调用“事件对象”的地方,您都可以从阵列中调用所需的任何字段。 AKA。

eventRender: function(event){
    var description = event.description; 
    var firstname = event.firstname;} //or
eventMouseover: function(event){
    var description = event.description; 
    var lastname = event.lastname;} // or
eventResize(event): function(event){
    var description = event.description; 
    var place = event.place;} // you get the picture...

您也可以使用...

指定特定视图
var view = calendar.fullCalendar('getView');
if(view.name === "agendaDay"){
    // do something
}

或使用回调中的一些内置视图对象,如...

eventRender: function(event, element, view){
    if(view.name === "agendaDay"){
        // do something
    }
}

答案 2 :(得分:0)

对于较新版本:

$('#calendar').fullCalendar({
eventRender: function (objEvent, element, view) {
    if (view.name === "agendaDay") { //or agendaWeek
        element.find(".fc-content")
                .append("<b>Other Info</b>:<br/>" + objEvent.otherInfo);
    }
} });