【发布时间】:2016-03-18 12:36:48
【问题描述】:
在 fullcalendar.io 的“月”视图中,我想显示仅当月,以及当月事件。但是,目前显示的是从当前日期算起的一个月。
例如:如果今天的日期是 2016-20-03...
- 什么全日历显示:从:2016-20-03 到:2016-19-04
- 我想展示的内容:从 2016-01-03 到:2016-31-03
在阅读文档并四处查看后,我找不到任何变量或为 fullcalendar 设置来实现这一点,所以我不得不修改 fullcalendar.js
有人已经这样做了吗?
查看
$('#' + engineerId).fullCalendar({
header: false,
views: {
plainMonth: {
type: 'basic',
duration: { days: 31 },
buttonText: 'Month'
},
plainWeek: {
type: 'basic',
duration: { days: 7 },
buttonText: 'Week'
}
},
firstDay: 1,
dayNamesShort: ['S', 'M', 'T', 'W', 'T', 'F', 'S'],
defaultView: 'plainWeek',
theme: true,
viewRender: function (view, element) {
$('#CalendarViewObject').val(view.name);
viewName = view.name;
},
aspectRatio: ratio,
editable: true,
eventLimit: false, // allow "more" link when too many events
events: {
startEditable: false,
durationEditable: false,
url: window.location.href.toString().split(window.location.host)[1] + '/GetEmployeeEvents',
type: 'POST',
data: function () { // a function that returns an object
$("[id^=qtip-]").empty();
$("[id^=qtip-]").remove();
return {
serviceAreaId: serviceAreaId,
employeeId: engineerId,
calendarViewObject: $('#CalendarViewObject').val()
};
},
error: function () {
alert('there was an error while fetching events!');
}
},...
控制器
public JsonResult GetEmployeeEvents(DateTime start, DateTime end, string queueName, string employeeId, string calendarViewObject)
“开始”和“结束”日期由 fullcalendar.io 设置,这些日期是我想要更改的日期。
非常感谢您, 阿尔维昆
【问题讨论】:
-
完整日历发送其当前可见范围。不确定您是否可以禁用显示上个月/下个月的部分内容,因为当月有空间时。但是,您可以在任何地方执行此操作,甚至可以在 fullcalendar 初始化期间在 jQuery 中获取事件列表。也许显示一些代码,说明您从哪里获取事件数据和用于生成它们的语言。
-
嗨@warath-coder,谢谢你的回答。我已上传完整的日历代码。
-
所以你有一个服务器支持发送 json 对象回来正确吗?除了日期范围外,它工作正常吗?也显示该代码。
-
是的,@warath-coder,我有一个发送 json 对象的服务器。是的,它工作正常:D。你想看什么代码?事件渲染代码?
-
所以用它来只发送当月的事件