我对编程比较陌生,如果能提供一些帮助,我将不胜感激。
我正在使用 fullcalendar,并且已经可以添加、删除和拖放事件。我的最后一个要求是能够克隆事件以加快管理速度。
我正在使用以下代码来克隆事件(取自上一篇文章)。目前这不会保存到数据库:
eventClick: function (event, jsEvent, ui, view) {
if (!copyKey) return;
var eClone = {
id: event.id+1,
title: event.title,
tooling: event.tooling,
start: event.start,
end: event.end
};
$('#calendar').fullCalendar('renderEvent', eClone);
},
我用来更新 SQL 数据库的示例代码如下:
eventDrop:function(event)
{
var start = $.fullCalendar.formatDate(event.start, "Y-MM-DD HH:mm:ss");
var end = $.fullCalendar.formatDate(event.end, "Y-MM-DD HH:mm:ss");
var title = event.title;
var tooling = event.tooling;
var id = event.id;
$.ajax({
url:"update.php",
type:"POST",
data:{title:title, tooling:tooling, start:start, end:end, id:id},
success:function()
{
calendar.fullCalendar('refetchEvents');
}
});
},
我的主要困惑是如何将 AJAX 用于我的克隆功能,同时确保在创建新事件时增加 id。
最佳答案
必须使用 insert.php 而不是 update.php...
最终工作代码:
eventClick: function (event, jsEvent, ui, view)
{
if (!copyKey) return;
var eClone = {
id: event.id,
title: event.title,
tooling: event.tooling,
start: event.start,
end: event.end
};
$('#calendar').fullCalendar('renderEvent', eClone);
var start = $.fullCalendar.formatDate(event.start, "Y-MM-DD HH:mm:ss");
var end = $.fullCalendar.formatDate(event.end, "Y-MM-DD HH:mm:ss");
var title = event.title;
var tooling = event.tooling;
var id = event.id;
$.ajax({
url:"insert.php",
type:"POST",
data:{title:title, tooling:tooling, start:start, end:end, id:id},
success:function()
{
$('#calendar').fullCalendar('renderEvent', eClone);
calendar.fullCalendar('refetchEvents');
}
});
},
关于javascript - 如何使用 AJAX 在 fullcalendar 中克隆事件后更新数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60759293/