我正在英雄框架中构建一个活动日历。我已经通过 JSON 方法将我的完整日历链接到数据库。记录显示从"2012-04-18 12:00"开始,在"2012-04-18 14:00"结束,但日历无法显示基于时间的事件。它显示为全天事件。知道如何解决这个问题吗?
<script type='text/javascript'>
$(document).ready(function() {
var date = new Date();
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();
var calendar = $('#calendar').fullCalendar({
header: {
left: 'prev,next today',
right: 'month,agendaWeek,agendaDay'
},
selectable: true,
selectHelper: true,
allDaySlot: false,
firstHour: 9,
select: function(start, end) {
var title = prompt('Event Title:');
if (title) {
calendar.fullCalendar('renderEvent',
{
title: title,
start: start,
end: end
},
false // make the event "stick"
);
var startDateString = $.fullCalendar.formatDate(start, 'yyyy-MM-dd hh:mm');
var endDateString = $.fullCalendar.formatDate(end, 'yyyy-MM-dd hh:mm');
$.ajax({
type: 'POST',
url: '{url}ajaxpost/add',
data: {
startDate: startDateString,
endDate: endDateString,
eventTitle: title
},
dateType: 'json',
success: function (resp) {
calendar.fullCalendar('refetchEvents');
}
});
}
calendar.fullCalendar('unselect');
},
editable: true,
events: "{url}ajaxget/data",
});
});
您需要将事件 allDay 属性设置为 false
当您从{url}ajaxget/data
url 返回事件时,您需要指定事件不是全天。
你这样做,我在每event
上设置一个allDay
字段,而不是一整天。
它可能看起来像这样:
[{
start : 10000000,
end : 10000500,
title : 'example event'
allDay : false
}, ... ]
您还可以在文档中找到此信息。