0
當我編輯一個事件時,它將被添加到日曆中,但除非刷新頁面,否則不會被修改。提交後的FullCalendar更新事件
我可以看到我們必須使用:('重新獲取事件'),但似乎它不適用於我。
我使用相同的模態形式進行添加和編輯。我是否正確使用「重新獲取事件」?這裏是我的代碼:
$('#event_form_save').on('click', function(e) {
e.preventDefault();
if ($('#event_form_eventId').val() === '') {
var formURL = "{{ path('Event_Add') }}";
} else {
var formURL = "{{ path('Event_Edit') }}";
}
console.log(formURL);
var formdata = {
calendarId: ($('#event_form_calendarId').val()),
eventId: ($('#event_form_eventId').val()),
title: ($('#event_form_title').val()),
startDate: ($('#event_form_startDate').val()),
endDate: ($('#event_form_endDate').val()),
color: ($('#event_form_color').val()),
};
$.ajax({
url: formURL,
type: 'POST',
data: JSON.stringify(formdata),
dataType: 'json',
contentType: 'application/json',
cache: false,
processData: true,
success: function(data, textStatus, jqXHR) {
$('#calendar').fullCalendar('refetchEvents');
doSubmit(data.eventId);
console.log(data.succeed);
if (data.succeed == true) {
alert('true')
} else {
alert('false')
};
console.log(data);
},
error: function(jqXHR, textStatus, errorThrown) {}
});
});
「似乎並不爲我工作。」沒有足夠的細節。出了什麼問題?您的新/更改事件是否正確保存在數據庫中?然後它是由服務器方法返回的,它檢索fullCalendar的事件?你如何在fullCalendar中定義事件饋送?當您調用refetchEvents時,fullCalendar是否向服務器發出了新的ajax請求(請在瀏覽器中檢查您的網絡工具)?它是否成功?您的新/被更改的事件是否包含在結果響應中?我們不知道過程中的哪個點出現問題,並且並非所有相關的代碼都顯示在問題中。 – ADyson