全日历显示“结束日期”休息一天
json 是 1 月 12 日到 16 日,但日历显示 12 日到 15 日
这是代码
var calCon = $('.cal');
calCon.fullCalendar({
prev: 'left-single-arrow',
firstDay: 1,
weekends:true,
weekNumbers:true,
ignoreTimezone:false,
allDayDefault:true,
weekNumberCalculation:"ISO",
defaultView:"basicWeek",
timeFormat: 'H(:mm)',
events: {
url: "/calendarjson.xsp",
cache: false
}
})
这是json
[{"color":"#3a87ad","id":"123","allday":"1","url":"/...","end":"2015-01-16T10:00:00.0+0100","start":"2015-01-12T09:00:00.0+0100","title":"Thomas Adrian"}]
我正在使用 allDayDefault,因为时间并不重要。
我做错了什么?
我正在使用最新的 fullcalender 2.2.5
我试过更改时间,但还是一样
最佳答案
FullCalendar.js 使用独家结束时刻。文档说它 here .这意味着事件的结束时刻不属于从开始到结束的时间间隔,而是标记该时间间隔之后的时间点。
这里的重点是您将 allDay 的默认值设置为 true。您使用 2015-01-16T10:00:00.0+0100
作为事件的端点。但是 allDay 事件不会在 fullCalendar 内部保留时间信息。它剥离时间,只保留日期。您使用 2015-01-16T10:00:00.0+0100
作为端点。时间被剥离,end 被排除在外,导致 2015-01-15T23:59:59.0+0100
,您在 fullCalendar 中看到的结果是什么。你应该使用 2015-01-17T00:00:00.0+0100
作为你的 allDay 事件的结束,让它跨越到 1 月 16 日 23:59:59。
关于javascript - 全日历显示 "end date"休息一天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27960971/