Javascript FullCalendar:如何通过ajax响应在FullCalendar中显示事件
我在全天工作。现在我需要通过ajax调用显示数据库中的所有事件。到目前为止,我已经通过JSON从数据库中获取了事件。 在Javascript FullCalendar:如何通过ajax响应在FullCalendar中显示事件,javascript,jquery,ajax,fullcalendar,jquery-events,Javascript,Jquery,Ajax,Fullcalendar,Jquery Events,我在全天工作。现在我需要通过ajax调用显示数据库中的所有事件。到目前为止,我已经通过JSON从数据库中获取了事件。 在var\u dump之后,我的JSON输出如下所示: array (size=3) 0 => array (size=7) 'title' => string 'hi' (length=2) 'id' => int 1 'start' => string '2016-05-30 00:00:00.000'
var\u dump
之后,我的JSON输出如下所示:
array (size=3)
0 =>
array (size=7)
'title' => string 'hi' (length=2)
'id' => int 1
'start' => string '2016-05-30 00:00:00.000' (length=23)
'rendering' => string 'background' (length=10)
'backgroundColor' => string '#ff9999' (length=7)
'className' => string 'event-full' (length=10)
'textColor' => string 'white' (length=5)
1 =>
array (size=7)
'title' => string 'vibrator' (length=8)
'id' => int 3
'start' => string '2016-05-26 00:00:00.000' (length=23)
'rendering' => string 'background' (length=10)
'backgroundColor' => string '#ff9999' (length=7)
'className' => string 'event-full' (length=10)
'textColor' => string 'white' (length=5)
2 =>
array (size=7)
'title' => string 'vibrator' (length=8)
'id' => int 8
'start' => string '2016-05-26 00:00:00.000' (length=23)
'rendering' => string 'background' (length=10)
'backgroundColor' => string '#ff9999' (length=7)
'className' => string 'event-full' (length=10)
'textColor' => string 'white' (length=5)
我通过ajax编写的脚本如下:-
events: function(start, end, timezone, callback)
{
$.ajax({
url: "calendar/show_events",
type: 'POST', // Send post data
data: 'type=fetch_events',
async: true,
success: function(s){
dynamic_events =s;
alert(dynamic_events);
// $('#calendar').fullCalendar('addEventSource', JSON.parse(dynamic_events));
var dynamic_events = [];
$(doc).find('event').each(function() {
events.push({
title: $(this).attr('title'),
start: $(this).attr('start') // will be parsed
});
});
callback(events);
}
});
}
我的代码中有什么错误。?我现在想学习。
谁能帮助我,拯救我的一天?
我需要显示
完整日历中的所有事件
将您的ajax代码更改为该事件
$.ajax({
url: "calendar/show_events",
type: 'POST', // Send post data
data: 'type=fetch_events',
async: true,
success: function(s){
var dynamic_events = [];
$(s).find('event').each(function() {
dynamic_events.push({
title: $(this).attr('title'),
start: $(this).attr('start') // will be parsed
});
});
callback(dynamic_events);
}
});
您得到的错误是什么?@Eyal Abir,未捕获引用错误:文档未定义默认我的警报(动态事件);我得到了响应,但我不知道如何在fullcalendar中设置为事件,因为您误用了success函数中的变量。doc确实没有定义。您可能想检查
s
变量。如果是这样,我应该如何检查's'变量。不知何故,我想以这种方式在fullcalendar中显示事件..但当我这样做时,我得到了这样的错误..未捕获错误:语法错误,无法识别的表达式:[{“标题”:“hi”,“id”:1,“开始”:“2016-05-30 00:00:00:00.000”,“渲染”:“背景”,“背景色”:“#ff9999”,“类名”:“事件完整”,“textColor”:“白色”},{“标题”:“可控震源”,“id”:3,“开始”:“2016-05-26 00:00:00.000”,“渲染”:“背景”,“背景色”:“ff9999”,“类名”:“事件完整”,“textColor”:“白色”},{“标题”:“可控震源”,“id”:8,“开始”:“2016-05-26 00:00:00.000”,“渲染”:“背景”,“背景色”:“ff9999”,“类名”:“事件完整”,“textColor”:“白色”}]什么时候发生的?这个字符串有两个问题,在结尾之前有一个额外的}
,由于某种原因,有一个特殊的字符可能会使您遇到问题。我复制粘贴了它以查看