您好我正在尝试使用Asp.Net MVC实现FullCalendar.js。我显示空日历,但我的活动没有加载到日历中。
$.ajax({
type: 'Get',
url: "/Matter/GetMatterEventsSummary",
data: data,
datatype: "Json",
contentType: "application/json",
success: function (doc) {
debugger;
$('#calendar').fullCalendar();
var events = [];
$(doc).find('[object Object],[object Object]').each(function () {
debugger;
events.push({
title: $(this).attr('title'),
start: $(this).attr('start') // will be parsed
});
// });
$('#calendar').fullCalendar('refetchEvents');
// callback(events);
}
});
它涉及到成功方法,它有两个事件。但不知道为什么这些事件没有加载到FullCalendar中,也不知道这个日历没有自动进入。 我想它不会发生在events.push中。当我将鼠标悬停在doc上时,它会显示“[object Object],[object Object]”,并且它在[0]和[1]上有两条记录。
请帮助我。
答案 0 :(得分:1)
尝试使用
$('#calendar').fullCalendar( 'rerenderEvents' )
事件结束后。
另外,请确保正确使用官方文档中的代码。尝试以下(未经测试):
$('#calendar').fullCalendar({
events: function(start, end, timezone, callback) {
$.ajax({
type: 'Get',
url: "/Matter/GetMatterEventsSummary",
data: data,
datatype: "Json",
contentType: "application/json",,
success: function(doc) {
var events = [];
$(doc).find('event').each(function() {
events.push({
title: $(this).attr('title'),
start: $(this).attr('start') // will be parsed
});
});
callback(events);
}
});
}
});
如果您现在想要重新获取活动,请致电:
$('#calendar').fullCalendar('refetchEvents');
必要时。
编辑: 由于您实际上是从JSON提要中提取数据,因此以下代码甚至可能就足够了:
$('#calendar').fullCalendar({
events: '/Matter/GetMatterEventsSummary'
});
查看文档here:
EDIT2:
要动态修改发送到后端的请求(取决于下拉列表或其他内容),可以按如下方式实现:
var myValue = 10;
$('#calendar').fullCalendar({
events: '/Matter/GetMatterEventsSummary',
data: function() { // a function that returns an object
return {
dynamic_value: myValue
};
}
});