请任何人帮助我找出代码中出了什么问题。我使用 fullcalendar.js 来处理日历事件。
我想在日历中显示事件。下面是我的代码。
$(document).ready(function() {
$(window).resize(function() {
$('#calendar').fullCalendar('option', 'height', get_calendar_height());
});
var date = new Date();
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();
var nevent = [];
nevent = document.getElementById('<%=hdnevent.ClientID%>').value;
// alert(nevent);
var calendar = $('#calendar').fullCalendar({
theme: true,
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay',
width: get_calendar_width
},
width: get_calendar_width,
height: 480,
selectable: true,
selectHelper: true,
slotMinutes: 15,
allDayDefault: false,
// events: 'JsonResponse.ashx',
events: nevent
});
});
nevent
值为:
[{ id: '2302', title: 'XXX', start: '4/4/2014 12:00:00 AM', end: '4/4/2014 12:00:00 AM', allDay: true, url: 'xxx'}]
但它不显示在日历中。 如果我直接分配值,那么它会显示事件。
示例:
events: [
{
id: '2302',
title: 'XXX',
start: '4/4/2014 12:00:00 AM',
end: '4/4/2014 12:00:00 AM',
allDay: true,
url: 'xxx'
}
]
请帮助我纠正我的错误。
最佳答案
数据更改后需要通知日历进行更新。尝试:
$("#calendar").fullCalendar('removeEvents');
$("#calendar").fullCalendar('addEventSource', nevent);
$("#calendar").fullCalendar('rerenderEvents');
当 nevent 准备好时。
编辑:
接受 JSON 对象而不是字符串的输入:
nevent = $.parseJSON(document.getElementById('<%=hdnevent.ClientID%>').value);
请注意,JSON 必须采用正确的格式并带有引号,例如:
[{ "id": "2302", "title": "XXX", "start": "4/4/2014 12:00:00 AM", "end": "4/4/2014 12:00:00 AM", "allDay": true, "url": "xxx"}]
关于jquery - fullcalendar js 中未显示的事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23211575/