为什么我的日历没有将JSON Feed中的数据放到我的网页上?
<script type='text/javascript'>
$(document).ready(function() {
var date = new Date();
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();
var calendar = $('#calendar').fullCalendar({
events: 'myfeed.php',
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay'
},
selectable: true,
selectHelper: true,
eventSources: [
// your event source
{
url: '/myfeed.php', // use the `url` property
color: 'red', // an option!
textColor: 'black' // an option!
}
// any other sources...
],
eventClick: function(calEvent, jsEvent, view) {
if (!confirm("Are you sure you want to delete this?")) {
}
else
{
// remove calender, and post the info to page
$.post("mybook.php", { idnumber: calEvent.id, remove: '1' } );
$('#calendar').fullCalendar('removeEvents', [calEvent.id]);
}
}
});
});
</script>
JSON Feed PHP代码
<?php $arr = array('id' => '1', 'title' => 'Apples', 'start' => '1372530615', 'end' => '1372537615', 'allDay' => false);
echo json_encode($arr);
?>
Charles web调试器显示该脚本正在评估正确的页面,并且它有一个响应。但是,我的日历什么也没做。 :(我认为这可能是因为我使用的是SSL,但我尝试了两种方式。
将我的代码缩减为
<script type='text/javascript' src='jquery-1.9.1.min.js'></script>
<script type='text/javascript' src='fullcalendar.js'></script>
<script type='text/javascript'>
$(document).ready(function() {
var calendar = $('#calendar').fullCalendar({
events: 'myfeed.php'
});
});
</script>
JSON Feed输出
{"id":"1","title":"Apples","allDay":false,"start":"1372507615","end":"1372537615"}
答案 0 :(得分:1)
如果您已使用eventSources
属性,请删除events
。
答案 1 :(得分:0)
不得不把[]放在我的JSON输出上。
答案 2 :(得分:0)
我想确认上面接受的答案。我已经看到了几个关于FullCalendar中没有出现的事件的问题,特别是JSON,解决方案似乎与语法有关。你必须完全给出它想要看的FullCalendar,关于这一点的文档有点不清楚。期待很多试验和错误。
答案 3 :(得分:0)
我在同一个问题上找到了这个问题并做了以下事情让它发挥作用:
我的JSON输出看起来像:
[{"title":"Vishal","start":"2018-01-12 00:00:00","end":"2018-01-12 10:00:00"},{"title":"Vishal","start":"2018-01-14 14:00:00","end":"2018-01-14 15:00:00"}]
我的PHP代码如下:
$data = array();
foreach($results as $run)
{
$obj = (object) [
'title' => $run->firstname,
'start' => $run->startdatetime,
'end' => $run->enddatetime
];
$data[] = $obj;
}
echo json_encode($data);
我希望这会有所帮助。