何らかの理由で、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');
}
ただし、何があっても、データベースに追加された新しいイベントは、画面を更新した場合にのみ表示されます。誰かが私が間違っているかもしれないことを提案できますか?