Jquery FullCalendar:删除事件,但无法更新此事件

Jquery FullCalendar:删除事件,但无法更新此事件,jquery,coldfusion,fullcalendar,Jquery,Coldfusion,Fullcalendar,我使用ColdFusion从实现了FullCalendar。我将事件从外部放到日历中。这工作正常,但我无法使用更新事件 $('#calendar').fullCalendar('updateEvent', responseText.NewID); 我需要这样做,我可以将dem数据库中的新ID放在事件上,用于其他操作,如调整大小、放置到其他日期或删除它 我可以从整个站点重新加载,但这不是真正的用户友好,因为月份将是实际月份,而不是我之前选择的月份 我的代码如下所示: drop: function

我使用ColdFusion从实现了FullCalendar。我将事件从外部放到日历中。这工作正常,但我无法使用更新事件

$('#calendar').fullCalendar('updateEvent', responseText.NewID);
我需要这样做,我可以将dem数据库中的新ID放在事件上,用于其他操作,如调整大小、放置到其他日期或删除它

我可以从整个站点重新加载,但这不是真正的用户友好,因为月份将是实际月份,而不是我之前选择的月份

我的代码如下所示:

drop: function(date, allDay) { // this function is called when something is dropped

    // retrieve the dropped element's stored Event Object
    var originalEventObject = $(this).data('eventObject');

    // we need to copy it, so that multiple events don't have a reference to the same object
    var copiedEventObject = $.extend({}, originalEventObject);

    // assign it the date that was reported
    copiedEventObject.start = date;
    copiedEventObject.allDay = allDay;

    // render the event on the calendar
    // the last `true` argument determines if the event "sticks" (http://arshaw.com/fullcalendar/docs/event_rendering/renderEvent/)
    $('#calendar').fullCalendar('renderEvent', copiedEventObject, true);

    var formdata = "startdatum="+copiedEventObject.start;

    $.ajax({
     url: '<cfoutput>#application.TartalomURL#</cfoutput>mod_Kalender/act_event_ins.cfm',
     data: formdata,
     type: "POST",
     dataType: "json",
     cache: false,
     success: function(responseText){
     $('#calendar').fullCalendar('updateEvent', responseText.NewID);
     }
      }); 
},

有人知道我编程的错误吗?

由于JavaScript是区分大小写的,应该这样做:

$('#calendar').fullCalendar('updateEvent', responseText.NewID)


请参阅完整的日历文档:

您需要使用updateEvent方法的事件,即:

 $.ajax({
    url: '<cfoutput>#application.TartalomURL#</cfoutput>mod_Kalender/act_event_ins.cfm',
    data: formdata,
    type: "POST",
    dataType: "json",
    cache: false,
    success: function(responseText){
        originalEvent.id = responseText.newid; //use the originating event object and update it
        $('#calendar').fullCalendar('updateEvent', originalEvent);
    }
  }); 

您是否收到了可以在此处发布的错误?如果您使用的是console,请添加console.logresponseText并查看返回的内容我猜NewID可能是大写的。当我从外部删除事件并调整事件大小或将事件删除到其他日期时,我收到了一个错误。然后我得到一个错误,指定的值未定义,必须是一个有效的整数。来自coldfusion,因为没有用于更新此事件的ID。当我重新加载站点时,我工作。我从responseText.newid得到一个整数,没错。我认为问题可能是UpdateEvent不知道他在哪个事件上必须使用newID。因为当我加载新站点时,会加载所有事件。这是我返回的console.logresponseText:{newid:45}是的,这看起来像是个问题。尽管如此,大写的NewID仍然可能引起问题。
 $.ajax({
    url: '<cfoutput>#application.TartalomURL#</cfoutput>mod_Kalender/act_event_ins.cfm',
    data: formdata,
    type: "POST",
    dataType: "json",
    cache: false,
    success: function(responseText){
        originalEvent.id = responseText.newid; //use the originating event object and update it
        $('#calendar').fullCalendar('updateEvent', originalEvent);
    }
  });