出于某种原因,我无法在 POST 之后重新渲染日历。到目前为止一切顺利:
$('#calendar').fullCalendar({
...
select: function (startDate, endDate) {
$.ajax({
url: 'data.php',
type: "POST",
data: {
'start':startDate,
'end':endDate,
}
success: $('#calendar').fullCalendar('rerenderEvents')
}
...
});
数据发布成功,我的 php 脚本将新事件添加到数据库中就好了。唯一的问题是日历没有被数据库中的新数据重新渲染。
如果我刷新页面(Firefox 中的 F5),则会呈现新事件。显然,我需要在事件提交到数据库后立即显示该事件。我不能指望我的用户刷新页面。
我对这个成功声明做了很多排列,例如:
function () {
$('#calendar').fullCalendar('rerenderEvents');
}
和(我的 php 返回“成功”),
function (data) {
if (data === 'success') $('#calendar').fullCalendar('renderEvents');
}
但是,无论如何,添加到数据库的新事件只有在我刷新屏幕时才会显示。谁能建议我可能做错了什么?