2014-10-20 98 views
0

我有一个网页,我想在FullCalendar上显示事件。我有一个位于另一个服务器(RESTful API)上的JSON供稿,并且像这样读取它:在FullCalendar上显示JSON源

function getData(selector,callback) { 
return $.ajax({ 
    url:"myurl/logs?" + selector, 
    jsonp: "callback", 
    dataType: "jsonp", 
    success: callback 
}) 
} 

选择器用于过滤结果。我每次必须使用.done选择器时也必须使用它(因为ajax的异步行为)。

getData().done(function(result){ 
// my function here 
} 

结果具有JSON格式是这样的:

[{"startTime":"2014-10-08T11:57:10.968Z","endTime":"2014-10-08T11:57:15.169Z"}] 

的FullCalendar只接受 “开始” 和 “结束” 作为标识符。我必须让FullCalendar接受我的JSON供稿?

+0

?显示fullcalendar配置 – Satpal 2014-10-20 13:00:21

+0

这样的 '$(“#calendar”)。fullCalendar({events:result });' – 2014-10-20 13:01:46

回答

0

你如何使用'的getData()`只需使用events (as a function)

$('#calendar').fullCalendar({ 
    events: function(start, end, timezone, callback) { 
     getData().done(function(results){ 
      var events = $.map(results, function(result) { 
       return { 
        title: '', 
        start: result.startTime, 
        end: result.endTime 
       }; 
      }); 
      callback(events); 
     });  
    } 
}); 
+0

谢谢!但是我现在可以在一天内获得所有日志(总共1046个),显示标题'3:21p'。任何想法? – 2014-10-20 13:23:22

+0

@username_HI,您需要设置'timeFormat'阅读文档。也只是好奇:你创造了5秒的事件?并使用'start'和'end'参数 – Satpal 2014-10-20 13:27:26

+0

我在控制台中进行了检查,它返回了一个正确大小的数组,但对象都具有id的'start = undefined'和'end = undefined'。是的,我正在量化自我设备和互补网站 – 2014-10-20 13:31:06