繁体   English   中英

FullCalendar JSON Feed无法正常工作:我的日历未将JSON Feed中的数据放到我的网页上

[英]FullCalendar JSON Feed not working: my calendar doesn't put the data from the JSON feed onto my webpage

为什么我的日历没有将JSON提要中的数据放到我的网页上?

<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"}

如果您已经在使用events属性,请删除eventSources

必须将[]放在我的JSON输出周围。

我想确认上面接受的答案。 我已经看到了几个有关FullCalendar中未显示的事件的问题,特别是JSON,而解决方案似乎与语法有关。 您必须准确地给FullCalendar所要看到的内容,关于这一点的文档尚不清楚。 期待大量的反复试验。

我遇到了与同一问题有关的问题,并进行了以下操作以使其起作用:

  1. 确保末尾有方括号[]
  2. 确保最后没有多余的逗号 (这就是我的意思)-显然,在使用paramenters内​​联时可以使用它,但是从JSON加载时会出现此问题
  3. 对fiend和value使用双引号。
  4. 我最终重写了php以创建一个对象数组,将值加载到该数组中,然后将其转换为JSON(这解决了上述所有JSON格式问题)

我的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);

我希望这有帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM