Javascript 为什么fullcalendar无法解析JSON? 总结

Javascript 为什么fullcalendar无法解析JSON? 总结,javascript,json,fullcalendar,fullcalendar-4,Javascript,Json,Fullcalendar,Fullcalendar 4,我已经设置了fullcalendar,我正试图使用他们文档中描述的JSON事件源来显示其中的数据 我一直收到以下失败消息failure解析JSON 我尝试过的事情 这是将触发失败消息的JSON[{“title”:“Lorem Ipsum”,“start”:“2019-04-01”,“end”:“2019-04-02”},{“title”:“Test”,“start”:“2018-09-01”,“end”:“2018-09-02”}] 我正在使用fullcalendar版本4.0.2。 我已经验证

我已经设置了fullcalendar,我正试图使用他们文档中描述的JSON事件源来显示其中的数据

我一直收到以下失败消息
failure解析JSON

我尝试过的事情 这是将触发失败消息的JSON
[{“title”:“Lorem Ipsum”,“start”:“2019-04-01”,“end”:“2019-04-02”},{“title”:“Test”,“start”:“2018-09-01”,“end”:“2018-09-02”}]

我正在使用fullcalendar版本4.0.2。
我已经验证了PHP代码返回的json字符串。
我在json响应中添加了一个
内容类型:application/json
头。
我尝试使用
eventDataTransform
hook返回fullcalendar文档中的一些示例JSON(请参阅编辑历史记录中的代码)

~~奇怪的是,当我将上面的JSON直接放在我的javascript中的
events
选项中时,它确实起作用了。~~编辑:正如Jaromanda X和Quentin所指出的,这是一个javascript数组,而不是JSON

代码
var calendar=newfullcalendar.calendar(calendarEl{
插件:['dayGrid'],
defaultView:'dayGridMonth',
区域设置:“nl”,
事件:'/fullcalendar/json.php'
});
我希望可以解析我的json,因为响应与我直接给
事件
选项的响应相同

附加信息 json.php文件的内容


我在php页面中尝试了您的代码,并以
事件:'/fullcalendar/json.php'的形式调用了fullcalendar
我不知道是什么原因导致了您的问题。 工作完美

<?php
 header('Content-Type: application/json');
 echo json_encode([
   [
    'title' => 'Lorem Ipsum',
    'start' =>  '2019-04-16T13:00:00',
    'end' =>  '2019-04-17T14:00:00'
   ],
   [
    'title' => 'The Test',
    'start' =>  '2019-04-16T10:00:00',
    'end' =>  '2019-04-17T13:00:00'
   ]
]);

我担心我的解决方案可能对其他人没有多大用处,但它就在这里

这个错误是由我们的主js文件中的以下js代码行引起的

if($('table')。长度>0){
$(“表”).wrap(“”);
}

这一行与FullCalendar生成的HTML输出相冲突,后者随后抛出解析json的
错误。

事件:[{“title”:“Lor….}]
不是json,而是
事件:[{“title”:“Lorem….9-02”}'
是下面一行中的json“-这是一个JavaScript数组,不是JSON。我怀疑
method'POST',
应该是
method'GET',
,但这只是一个猜测。您的“fullcalendar/json.php”端点是否需要POST请求?@JaromandaX感谢您的评论。这可以解释为什么解析“json”没有失败,因为它不是。我注意到在
eventDataTransform
处理程序函数中,您返回了一个包含一个对象的数组。我非常确定您需要返回的只是对象(不是包装在数组中)。我还获取了fullcalendar所需的代码,它可以正常工作。问题出在别的地方。如果我能找到解决方案,我会把它贴在这里。感谢您抽出时间来研究我的问题。尽管很可能没有其他人会有这个确切的原因,但只要大致了解您是如何解决的,可能会对其他人有所帮助。感谢您不厌其烦地发布您的解决方案。