我有一个coldfusion cfc,我打电话来查询开始和结束日期之间的事件。这是我的剧本:
$(document).ready(function() {
var calendar = $('#calendar').fullCalendar({
events: function(start, end, callback) {
$.ajax({
type: "GET",
url: 'cfc/forecast.cfc?method=GetForecast&returnformat=plain',
data: {
startDate: start.getDate(),
startMonth: start.getMonth(),
startYear: start.getFullYear(),
endDate: end.getDate(),
endMonth: end.getMonth(),
endYear: end.getFullYear()
},
success: function(data) {
callback(data);
}
});
}
});
});
在firebug中,返回数据如下所示:
[
{"ID": 16, "start": "2010-01-04 00:00:00.0", "end": "", "title": "AM 2 Hours: 2 - 2"},
{"ID": 16, "start": "2010-01-04 00:00:00.0", "end": "", "title": "AM 2 Hours: 2 - 2"},
{"ID": 16, "start": "2010-01-04 00:00:00.0", "end": "", "title": "PM 2 Hours: 2 - 2"},
{"ID": 16, "start": "2010-01-04 00:00:00.0", "end": "", "title": "PM 2 Hours: 2 - 2"}
]
我是Javascript,jQuery和FullCalendar的新手,所以请原谅我。我知道我错过了一些东西,却无法弄清楚它是什么。任何建议都非常感谢!
感谢,
答案 0 :(得分:2)
可能有一些事情。
1)所有的id都是一样的。如果您没有专门使用它们,则不能包含它们,fullcalendar将自动分配ID。
2)可能区分大小写。我得到的JSON将它作为id而不是ID。
3)这些应该是全天活动吗?如果是这样,请使用JSON中的“allDay”:true属性。由于没有结束日期,我认为这是一整天的事情。
试一试。但是......
如果您可以控制正在调用的ColdFusion脚本,则可以将其更改为仅接收作为时间戳的开始和结束参数,并返回正确的JSON。然后,您可以将URL作为字符串传递给events:属性,它会为您处理所有事情。
$('#calendar').fullCalendar({
events: 'cfc/forecast.cfc?method=GetForecast&returnformat=plain'
});
答案 1 :(得分:0)
我在这里找到了解决方案http://www.jamesnetherton.com/blog/2008/05/04/Converting-Unix-timestamp-values-in-ColdFusion/。我需要转换开始和结束时间才能在我的SQL查询中使用。