3

FullCalendar jQuery pluginリソースをサポートするのバージョンを使用しています。

この例に従って、外部イベントをドラッグしています。

それはすべて非常にうまく機能しますResource 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);

    // is the "remove after drop" checkbox checked?
    if ($('#drop-remove').is(':checked')) {
        // if so, remove the element from the "Draggable Events" list
        $(this).remove();
    }
}

これについて何か助けていただければ幸いです。

4

1 に答える 1

1

私は FullCalendar のこのフォークも使用しており、次のように、イベントをドロップするとリソース ID を取得できます。

drop: function(date, allDay, test3, test4, resource) {          
    var originalEventObject = $(this).data('eventObject');
    var copiedEventObject = $.extend({}, originalEventObject);
    copiedEventObject.start = date;
    copiedEventObject.allDay = allDay;
    copiedEventObject.resource = resource.id;

    $('#calendar').fullCalendar('renderEvent', copiedEventObject, true);
                
    if ($('#drop-remove').is(':checked')) {
        $(this).remove();
    }
}

resourceそのため、パラメータを関数に渡す必要があり、dropを呼び出すことでリソース ID を取得できますresource.id

于 2013-06-07T06:54:21.793 に答える