我正在使用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的每个事件都将被删除,而不仅仅是最后点击的事件。