Javascript jQueryUI FullCalendar:从服务器获取事件后的回调
我使用Adam Shaw()提供的jQueryUI完整日历Javascript jQueryUI FullCalendar:从服务器获取事件后的回调,javascript,jquery-ui,fullcalendar,Javascript,Jquery Ui,Fullcalendar,我使用Adam Shaw()提供的jQueryUI完整日历 当我按下“下一步”按钮时,日历将从我的服务器加载新事件,我希望在我的页面上将这些事件显示为表格,而不仅仅是在日历中。一旦FullCalendar获取了事件,是否有一个回调函数可以注入来处理事件?或者是否有其他方法获取当前显示的事件?您发布的链接显示了您问题的答案: $('#calendar').fullCalendar({ events: function(start, end, callback) { $.ajax({ ...
当我按下“下一步”按钮时,日历将从我的服务器加载新事件,我希望在我的页面上将这些事件显示为表格,而不仅仅是在日历中。一旦FullCalendar获取了事件,是否有一个回调函数可以注入来处理事件?或者是否有其他方法获取当前显示的事件?您发布的链接显示了您问题的答案:
$('#calendar').fullCalendar({
events: function(start, end, callback) {
$.ajax({
...
每次获取新事件时都会使用“events”回调函数。在本例中,调用jQuery的$.ajax
函数来检索事件数据(请看一看)。然后,$.ajax
的“success”回调将事件数据从服务器解析为FullCalendar期望的格式:
$(doc).find('event').each(function() {
events.push({
title: $(this).attr('title'),
start: $(this).attr('start') // will be parsed
});
});
callback(events);
在示例中,“doc”是一个xml文档,其中包含带有title和start属性的事件元素。您应该将其更改为从服务器检索到的任何内容。使用检索到的数据,您可以在将其传递到FullCalendar之前或之后执行任何您想要的操作(使用
回调(事件);
如示例所示)您发布的链接显示了问题的答案:
$('#calendar').fullCalendar({
events: function(start, end, callback) {
$.ajax({
...
每次获取新事件时都会使用“events”回调函数。在本例中,调用jQuery的$.ajax
函数来检索事件数据(请看一看)。然后,$.ajax
的“success”回调将事件数据从服务器解析为FullCalendar期望的格式:
$(doc).find('event').each(function() {
events.push({
title: $(this).attr('title'),
start: $(this).attr('start') // will be parsed
});
});
callback(events);
在示例中,“doc”是一个xml文档,其中包含带有title和start属性的事件元素。您应该将其更改为从服务器检索到的任何内容。使用检索到的数据,您可以在将其传递到FullCalendar之前或之后执行任何操作(使用
回调(事件);
如示例所示)使用eventRender在DOM中插入事件。看
或者收集它们以稍后将其插入DOM:
var collection = [];
$('#calendar').fullCalendar({
eventRender: function(event, element) {
collection.push(event);
}
});
使用eventRender在DOM中插入事件。看 或者收集它们以稍后将其插入DOM:
var collection = [];
$('#calendar').fullCalendar({
eventRender: function(event, element) {
collection.push(event);
}
});
我通过重写代码来获取数据,从而解决了这个问题:
var myCustomFunction = function(events) {
// do something
}
var myCustomFetchFunction = function(start, end, callback) {
$.ajax({
url: 'feed.php',
dataType: 'json',
data: {
// our hypothetical feed requires UNIX timestamps
start: Math.round(start.getTime() / 1000),
end: Math.round(end.getTime() / 1000)
// additional parameters can be added here
},
success: function(events) {
callback(events);
// this is where I do some custom stuff with the events
myCustomFunction(events);
}
});
};
$('#calendar').fullCalendar({
events: myCustomFetchFunction()
});
我通过重写代码来获取数据,从而解决了这个问题:
var myCustomFunction = function(events) {
// do something
}
var myCustomFetchFunction = function(start, end, callback) {
$.ajax({
url: 'feed.php',
dataType: 'json',
data: {
// our hypothetical feed requires UNIX timestamps
start: Math.round(start.getTime() / 1000),
end: Math.round(end.getTime() / 1000)
// additional parameters can be added here
},
success: function(events) {
callback(events);
// this is where I do some custom stuff with the events
myCustomFunction(events);
}
});
};
$('#calendar').fullCalendar({
events: myCustomFetchFunction()
});
对于寻求此解决方案的其他人来说,在V2中非常容易。可以使用简单事件对象传递成功回调
$('#calendar').fullCalendar({
events: {
url: 'http://yourdatafeed',
type: 'POST',
error: function() {
// Alert on error
},
success: function (data) {
// data will have your json array of event objects
},
}
});
对于寻求此解决方案的其他人来说,在V2中非常容易。可以使用简单事件对象传递成功回调
$('#calendar').fullCalendar({
events: {
url: 'http://yourdatafeed',
type: 'POST',
error: function() {
// Alert on error
},
success: function (data) {
// data will have your json array of event objects
},
}
});
我不想覆盖函数来获取事件。我更希望添加一个在FullCalendar成功获取事件后调用的回调。请你带我到这儿再远一点好吗?你应该看看。有一个事件
eventAfterAllRender
可能会有所帮助。或传递事件的eventRender
。如何在eventAfterAllRender回调函数中获取事件?ViewObject不保存事件:您想对事件做什么?您需要完整的事件集,还是希望对每个事件单独执行某些操作?我需要所有事件并将它们作为dom元素注入我的网站。所以我基本上想从所有事件中获取标题和日期,并用它们创建html。我不想覆盖函数来获取事件。我更希望添加一个在FullCalendar成功获取事件后调用的回调。请你带我到这儿再远一点好吗?你应该看看。有一个事件eventAfterAllRender
可能会有所帮助。或传递事件的eventRender
。如何在eventAfterAllRender回调函数中获取事件?ViewObject不保存事件:您想对事件做什么?您需要完整的事件集,还是希望对每个事件单独执行某些操作?我需要所有事件并将它们作为dom元素注入我的网站。所以我基本上想从所有事件中获取标题和日期,并用它们创建html。我在日历中做了类似的事情,我必须通过数据表与日历内外的完整日历事件进行交互。尝试使用Datatables jquery插件,它将使您的生活变得轻松;)我对我的日历做了类似的事情,我必须通过数据表与日历内外的fullcalendar事件进行交互。尝试使用Datatables jquery插件,它将使您的生活变得轻松;)这正是我在第一个答案中解释的。谢谢,我只是不能理解你的答案,我想更多的代码会有所帮助。但也许只是我。谢谢你的帮助。这正是我在第一个答案中解释的。谢谢,我只是不理解你的答案,我想更多的代码会有所帮助。但也许只是我。谢谢你的帮助。