我在我的项目上使用fullcalendar。我的用户将输入事件信息,如事件名称、日期和位置。除了日期/时间,一切都很顺利。当用户输入日期和时间时,显示如下:06/28/2016 10:00 AM
FullCalendar读取日期但不读取时间。我需要做什么才能让它读取时间?
这是我的js为fullcalendar:
$(document).ready(function() {
// page is now ready, initialize the calendar...
$('#calendar').fullCalendar({
// put your options and callbacks here
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay'
},
weekends: true,
events: 'http://www.familyevent.comli.com/events.php',
eventRender: function(event) {
if (event.allDay === 'true') {
event.allDay = true;
} else {
event.allDay = false;
}
},
eventClick: function(event) {
alert("event start " + moment(event.start).format('MM/DD/YYYY hh:mm a') + " event end " +
moment(event.end).format('MM/DD/YYYY hh:mm:ss'));
}
});
});
我放入eventClick来查看fullCalendar正在读取的内容。它获取日期,但时间始终是12:00 AM
使用已经与fullCalendar捆绑在一起的moment.js将日期转换为fullCalendar能够理解的格式。
event.start = moment("06/28/2016 10:00 AM");
如果在删除AM前的空格后仍然不起作用,并且您的日期格式定义良好,则可以通过手动添加小时和分钟逐步创建moment对象:
var time = ("06/28/2016 10:00 AM").split(" ")[1].split[":"];
event.start = moment("06/28/2016 10:00 AM").hours(time[0]).minutes(time[1]); //also add AM/PM handling