Javascript Fullcalendar:如何从两个变量获取事件并通过&x27;eventAfterRender';?
我有两种类型的事件,即“假日”和“事件”,它们应该从两个变量接收。这些变量保存着ajax响应。现在,我想将假日和事件作为“事件”传递到日历中。我不知道如何传递变量。下面是我的ajax代码,它被声明为变量。我的代码正确吗Javascript Fullcalendar:如何从两个变量获取事件并通过&x27;eventAfterRender';?,javascript,ajax,variables,fullcalendar,Javascript,Ajax,Variables,Fullcalendar,我有两种类型的事件,即“假日”和“事件”,它们应该从两个变量接收。这些变量保存着ajax响应。现在,我想将假日和事件作为“事件”传递到日历中。我不知道如何传递变量。下面是我的ajax代码,它被声明为变量。我的代码正确吗 var return_holidays = function() { var holdays = []; $.ajax({ url: "/calendar/show_holidays", type: 'POST', // Send post da
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);
}
});
我能用这种方式实现吗?这是否正确?返回假日、返回事件的返回类型应该是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!');
},
}
]
});
或者,您可以将URL直接传递到日历:
$('#calendar').fullCalendar({
eventSources: [
'/calendar/show_holidays',
'calendar/show_events'
]
});
始终确保您正在从后端重新调整JSON格式的对象。Yeh peer谢谢您的链接,别忘了给我一个升级票……)