Jquery Fullcalendar事件函数回调;“未识别”不是一个函数;
我正在向我的Fullcalendar中实现JSON提要的最后一步,我遇到了回调函数的问题。根据“回调(事件)”函数的放置位置,我不断收到错误“未识别不是函数”或“意外标识符”Jquery Fullcalendar事件函数回调;“未识别”不是一个函数;,jquery,angularjs,fullcalendar,Jquery,Angularjs,Fullcalendar,我正在向我的Fullcalendar中实现JSON提要的最后一步,我遇到了回调函数的问题。根据“回调(事件)”函数的放置位置,我不断收到错误“未识别不是函数”或“意外标识符” success: function(response) { var event = []; $(response).find('events').each(function() { event.push({ title: $(this).attr('title'), start: $
success: function(response) {
var event = [];
$(response).find('events').each(function() {
event.push({
title: $(this).attr('title'),
start: $(this).attr('start'),
end: $(this).attr('end')
});
});
callback(event);
}
下面是整个Ajax请求:
App.controller('calCtrl', function ($scope, $log, $state) {
$scope.eventSources = [{
events: function(start, end, timezone, callback) {
$.ajax({
url: 'url/calendarConnect.php',
dataType: 'json',
success: function(response) {
var event = [];
$(response).find('events').each(function() {
event.push({
title: $(this).attr('title'),
start: $(this).attr('start'),
end: $(this).attr('end')
});
});
}
});
callback(event);
}
}]
});
任何关于问题所在的想法都将不胜感激。将“回调”移到ajax请求的成功函数中。我假设您不希望调用回调,除非ajax请求成功。此外,如果回调在函数外部,则不会引用“event”变量
success: function(response) {
var event = [];
$(response).find('events').each(function() {
event.push({
title: $(this).attr('title'),
start: $(this).attr('start'),
end: $(this).attr('end')
});
});
callback(event);
}
回调肯定需要在ajax成功函数中,出现未定义错误的原因可能是您没有传入一个用作回调的函数。我该怎么做呢?我对fullcalendar和angular的经验非常有限。我从未听说过fullcalendar。我建议学习官方angular教程,使用它自己的$http/$资源,而不是$.ajax。我很想这样做,但是fullcalendar是一个基于jquery的日历,非常适合我的需要,我正在使用一个修改过的版本,允许它在我正在使用的cordova应用程序的AngularJS中工作。这是解决方案,但是现在我在控制台中记录“事件”时得到一个空数组,“响应”得到的是JSON对象。有什么想法吗?没关系,通过对成功函数的一些调整,我找到了它,现在它开始工作了