簡體   English   中英

Fullcalendar:如何從兩個變量中獲取事件並傳遞給'eventAfterRender'?

[英]Fullcalendar: how to get events from two variables and pass to through 'eventAfterRender'?

我有兩種類型的事件,即“假期”和“事件”,應該從兩個變量中獲取。 變量持有ajax響應。 現在我想將假期和事件作為“事件”傳遞給日歷。 我不知道如何傳遞變量。 以下是我的ajax代碼,它被聲明為變量。 我的代碼是否正確?

var return_holidays = function() { 
var holdays = [];
$.ajax({
        url: "/calendar/show_holidays",
        type: 'POST', // Send post data
        data: 'type=fetch',
        async: true,

        success: function(s)
            {
           //alert(s);
              holdays = s;
              }
    });
    return holdays;
}();    
var return_events = function() {
var dynamic_events = [];    
$.ajax({
        url: "calendar/show_events",
        type: 'POST', // Send post data
        data: 'type=fetch_events',
        async: true,

         success: function(s)
         {//alert(s);
         dynamic_events = s;
          }
    });
    return dynamic_events;
}();     


$('#calendar').fullCalendar({ 

utc: true, 
header: { 
left: 'prev,next today', 
center: 'title', 
right: 'month,agendaWeek,agendaDay' 
}, 
editable: true, 
droppable: true, 
eventSources: [return_holidays, return_events],//am calling the variables
eventAfterRender: function(event, element, view) { 
element.append(event.title); 
} 

});

我能以這種方式實現嗎? 這個對嗎?

return_holidays,return_events的返回類型應為JSON,因此您可以嘗試返回JSON.stringify(yourArray); 而不是一個普通的數組。 您還可以嘗試讓日歷處理提取業務:

$('#calendar').fullCalendar({

    eventSources: [

        {
            url: '/calendar/show_holidays',
            type: 'POST',
            data: {
                'type' : 'fetch'
            },
            error: function() {
                alert('there was an error while fetching holidays!');
            },
        },
        {
            url: '/calendar/show_events',
            type: 'POST',
            data: {
                'type' : 'fetch_events'
            },
            error: function() {
                alert('there was an error while fetching events!');
            },
        }
    ]
});

http://fullcalendar.io/docs/event_data/events_json_feed/

或者,您可以將URL直接傳遞給日歷:

$('#calendar').fullCalendar({
    eventSources: [
        '/calendar/show_holidays',
        'calendar/show_events'
    ]
});

http://fullcalendar.io/docs/event_data/eventSources/

始終確保從后端重新調整JSON格式的對象。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM