我正在使用fullcalendar。當我點擊一個事件時,一個模式打開,您可以選擇刪除該事件。清除完整日曆後事件刪除後的數據
當我點擊delete時,事件被刪除,並啓動一個php腳本,它將在ftp上創建一個文件以與另一個程序同步。這工作正常。 當我點擊下一個事件的刪除。 php腳本創建兩個文件。 (第一個和新的一個)
當我點擊刪除第三個事件時,php腳本創建3 ...依此類推 如果我在刪除兩個事件之間刷新頁面沒有問題。
我用$id = $_POST['id'];
從在PHP腳本的事件而得到ID
這是我在fullcalendar使用的代碼:。
eventClick: function(event, delta) {
$('#modalTitle').html(event.title);
$('#modalBody').html( 'Start: ' + moment(event.start).format('h:mm') + '</br>' +
'Stop: ' + moment(event.stop).format('h:mm') + '</br></br>' +
'Locatie: ' + event.location + '</br></br>' +
'Info: </br>' + event.description + '</br></br>' +
'<b>Debug info:</b> </br>' +
' Event id :' + event.id +'</br>' +
' Resource id :' + event.resourceId +'</br>' +
' Last modified :' + moment(event.datelastmodified).format('YYYY-MM-DD h:mm:ss')
);
$('#eventUrl').attr('href',event.url);
$("#deleteEventBtn").click(function() {
$('#calendar').fullCalendar('removeEvents',event._id); //external event, therefore using event._id
$.ajax({
url: 'delete_events.php',
data: '&id='+ event.id ,
type: "POST",
success: function(json) { //refresh calendar on success
$('#calendar').fullCalendar('refetchEvents');
//alert("Updated Successfully");
},
error: function(json) { //refresh calendar on error
$('#calendar').fullCalendar('refetchEvents');
},
statusCode: {404: function() {alert("delete_events.php niet gevonden. De wijziging wordt niet opgeslagen.")}},
});
});
$('#DeleteEventModal').modal();
},
我discoverd另一個問題,當我點擊一個事件模態打開。當我c點擊「關閉」關閉模式,點擊下一個事件並選擇「刪除」這兩個事件都將被刪除。
編輯: 我想我需要像這樣的一些代碼:
<script>
$(function(){
$('#DeleteEventModal').on('hidden.bs.modal', function() {
$('#DeleteEventModal .modal-body').html('');
});})
</script>
此代碼刪除HTML的身體,我需要它來清除事件ID。 每次我點擊一個事件event.id
被添加到緩存(?)。當我點擊刪除。帶有緩存event.id的每個事件都將被刪除,而不僅僅是最後點擊的事件。