我正在使用 fullcalendar 来展示我的网站成员的活动。每个人都可以添加自己的事件。每个事件都必须有唯一的 ID,我在 PHP 中使用 SELECT INCREMENT(MAX('id')) 获得。然后将正确的 var 传递给 JavaScript,这是一个问题。在第二次尝试添加新事件时,该数字将提供给 fullcalendar renderEvent 函数。第一次单击日历时,声明的变量为空(在名为 newEventId 的变量中)。
这是我的代码:
function showCalendar() {
var date = new Date();
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();
var newEventId = '';
$('#kalendarz').fullCalendar({
header: {
left: 'prev,next today',
center: 'title',
right: 'month'
},
editable: false,
dayClick: function(e)
{
$.getJSON('/ajax/call/bands/AddEvent', function(data) {
newEventId = data.dane;
});
console.log(newEventId); // <- empty, then with ID at second click...
$("#kalendarz").fullCalendar('renderEvent',
{
title: 'Termin zajęty',
start: e,
id: newEventId
});
},
});
}
问题是什么?renderEvent 函数不等待 getJSON 完成工作?我能修好吗?