添加事件(作为json提要)时解析JSON FullCalendar失败
我正在使用Codeigniter 4、JQuery和AJAX
我使用FullCalendar在我的页面添加了一个日历,基本结构如下:
var base_url = $("#base_url").val();
var calendarEl = $("#calendar")[0];
var calendar = new FullCalendar.Calendar(calendarEl, {
initialView: 'dayGridMonth',
headerToolbar: {
left:'prev,next today',
center: 'title',
right: 'dayGridMonth,timeGridWeek,timeGridDay'
},
events: base_url + '/calendar/fetch_activities',
editable: true,
buttonText: {
today: "Today",
month: "Month",
week: "Week",
day: "Day",
list: "List",
prev: "Prev",
next: "Next"
},
dateClick: function(info) {
// console.table(info);
}
});
我尝试使用以下命令获取事件
events: base_url + '/calendar/fetch_activities',
理论上应该按照它接受的结构工作:
events: [
{
id: 'a',
title: 'my event',
start: '2018-09-01'
}
]
我的events: base_url + '/calendar/fetch_activities',
输出是:
[{
"title":"Meeting with Mike",
"start":"2021-04-08 11:00:00",
"end":"2021-04-08 00:00:00"
},
{
"title":"Meeting with Mike",
"start":"2021-04-13 00:00:00",
"end":"2021-04-13 00:00:00"
}]
但仍然无论出于何种原因,我都会收到此错误
这里可能有什么问题?
==编辑
+错误是在全日历代码中生成的吗?
是的。
+在日历选项中省略事件提要属性可以防止该错误吗?
是的。
+测试是否确认发布的JSON是服务器从GET请求返回的内容,其中包含查询组件中的Start和End值?
是的。
+您是否测试了其他因素以排除它们是导致错误的原因?
我已经没有主意了。
我做了更深入的调查,发现由于JSON错误,此消息并不总是显示;
https://github.com/fullcalendar/fullcalendar/issues/4692
https://github.com/fullcalendar/fullcalendar/issues/4952
解决方案
我重新检查了这些文件,发现Json文件有问题,因为它不知何故包含了由CodeIgniter的调试栏发送的脚本标记。
[{"title":"aaa22","start":"2021-04-01","end":"2021-04-01","id":"4"},{"title":"aaaeeee","start":"2021-03-30","end":"2021-03-30","id":"48"},{"title":"beep boop","start":"2021-03-31","end":"2021-03-31","id":"54"},{"title":"lorem ipsum edit","start":"2021-04-06","end":"2021-04-06","id":"55"}]
<script type="text/javascript" id="debugbar_loader" data-time="1618658976" src="localhost/myapp/?debugbar"></script><script type="text/javascript" id="debugbar_dynamic_script"></script><style type="text/css" id="debugbar_dynamic_style"></style>
我不知道这是如何发生的,但我必须调查一下。
编辑:
您可以通过进入Config/Boot/development.php
并添加define('CI_DEBUG', false)
来关闭调试。现在运行得很好。
相关文章