7

このプラグインを使い始めたばかりで、作成したばかりのイベントを削除するのに問題があります。eventClick を使用するとすべてのイベントを削除できますが、eventClick の特定のイベントは削除できません。

どんな助けでも大歓迎です。これが私のコードです。

<script type='text/javascript'>

$(document).ready(function() {

    var date = new Date();
    var d = date.getDate();
    var m = date.getMonth();
    var y = date.getFullYear();

    var calendar = $('#calendar').fullCalendar({
        header: {
            left: 'prev,next today',
            center: 'title',
            right: 'month,agendaWeek,agendaDay'
        },
        selectable: true,
        selectHelper: true,
        select: function(start, end, allDay) {
            var title = prompt('Trade Show Name:');
            if (title) {
                calendar.fullCalendar('renderEvent',
                    {
                        title: title,
                        start: start,
                        end: end,
                        allDay: allDay,
                        id: 12
                    },
                    true // make the event "stick"
                );
            $('input[name="startDate"]').val(start);
            }
            calendar.fullCalendar('unselect');
        },
        eventClick: function(calEvent, jsEvent, view) {
            $('#calendar').fullCalendar('removeEvents', function (calEvent) {
                return true;
            });,
        editable: true
    });

});
4

1 に答える 1

27

これは 2 つの方法で行うことができます。

1) 各イベントに一意の ID を設定し、それらの ID をremoveEvents呼び出しに渡します。

eventClick: function (calEvent, jsEvent, view) {           
    $('#calendar').fullCalendar('removeEvents', calEvent._id);
}

fullCalendar_idが生成する一意の ID は次のとおりです。

2) フィルター関数を渡して、必要なイベントを削除します。

でこれを行おうとしていることを考えるとeventClick、2番目を使用することをお勧めします。あなたのケースの例は次のとおりです。

eventClick: function (calEvent, jsEvent, view) {
    $('#calendar').fullCalendar('removeEvents', function (calEvent) {
        return true;
    });
}

ここで、渡されたフィルター関数はremoveEvents、削除するイベントを受け入れてtrue を返します。でこれを行っているのでeventClick、パスするだけで済みますcalEvent

お役に立てれば!

于 2013-02-13T04:57:09.710 に答える