fullCalendar动态添加事件时如何使用eventClick?
How to use eventClick when dynamically adding events to fullCalendar?
我创建了一个名为 myEvent
的对象,并用它来动态地向 fullCalendar
呈现事件。我的问题是如何在这种情况下应用 eventClick
,我尝试了很多不同的方法并进行了大量研究,但似乎没有关于此的任何信息。
我当前的代码看起来是这样的...
var myCalendar = $('#calendar');
myCalendar.fullCalendar();
<% for(var i = 0; i < group.meetings.length; i++) { %>
var startDay = '<%= group.meetings[i].startDay%>'.split("/");
console.log(startDay[0]);
var startTime = '<%= group.meetings[i].startTime%>';
var endDay = '<%= group.meetings[i].endDay%>'.split("/");
var endTime = '<%= group.meetings[i].endTime%>';
var startDayFormatted = moment(startDay[2] + "-" + startDay[0] + "-" + startDay[1] + "T" + startTime).toDate().toISOString();
var endedDayFormatted = moment(endDay[2] + "-" + endDay[0] + "-" + endDay[1] + "T" + endTime).toDate().toISOString();
console.log(startDay[0]);
var myEvent = {
title: '<%= group.meetings[i].meetingName%>',
allDay: true,
start: startDayFormatted,
end: endedDayFormatted,
// Need if statement here after we add the completed boolean
<% if(group.meetings[i].final == true) {%>
color: 'blue',
textColor: 'white'
<%} else if(group.meetings[i].final == false) {%>
color: 'yellow',
textColor: 'black'
<%}%>
};
myCalendar.fullCalendar('renderEvent', myEvent, true);
<%}%>
所以,我最终弄清楚了我的问题。我只需要将 for
循环变成一个函数和 return 对象 myEvent
。在我像这样打电话给 fullCalendar
之后
$('#calendar').fullCalendar({
events: [getEvents()],
eventClick: function (event, jsEvent, view) {
// whatever you want it to do.
}
});
我创建了一个名为 myEvent
的对象,并用它来动态地向 fullCalendar
呈现事件。我的问题是如何在这种情况下应用 eventClick
,我尝试了很多不同的方法并进行了大量研究,但似乎没有关于此的任何信息。
我当前的代码看起来是这样的...
var myCalendar = $('#calendar');
myCalendar.fullCalendar();
<% for(var i = 0; i < group.meetings.length; i++) { %>
var startDay = '<%= group.meetings[i].startDay%>'.split("/");
console.log(startDay[0]);
var startTime = '<%= group.meetings[i].startTime%>';
var endDay = '<%= group.meetings[i].endDay%>'.split("/");
var endTime = '<%= group.meetings[i].endTime%>';
var startDayFormatted = moment(startDay[2] + "-" + startDay[0] + "-" + startDay[1] + "T" + startTime).toDate().toISOString();
var endedDayFormatted = moment(endDay[2] + "-" + endDay[0] + "-" + endDay[1] + "T" + endTime).toDate().toISOString();
console.log(startDay[0]);
var myEvent = {
title: '<%= group.meetings[i].meetingName%>',
allDay: true,
start: startDayFormatted,
end: endedDayFormatted,
// Need if statement here after we add the completed boolean
<% if(group.meetings[i].final == true) {%>
color: 'blue',
textColor: 'white'
<%} else if(group.meetings[i].final == false) {%>
color: 'yellow',
textColor: 'black'
<%}%>
};
myCalendar.fullCalendar('renderEvent', myEvent, true);
<%}%>
所以,我最终弄清楚了我的问题。我只需要将 for
循环变成一个函数和 return 对象 myEvent
。在我像这样打电话给 fullCalendar
之后
$('#calendar').fullCalendar({
events: [getEvents()],
eventClick: function (event, jsEvent, view) {
// whatever you want it to do.
}
});