0

我正在使用完整日历版本 4。当当天的事件以某种方式发生变化时,我想用事件的计数更新页面的单独部分:有多少未确认,有多少已确认,有多少已取消等在我的代码中的某个日期(称为 call_list_date)。

我想知道是否有办法使用 fullcalendar 的一种方法来做到这一点?我目前正在使用 eventrender 来计算我需要的内容,但我发现即使我调整大小、将事件悬停在当前日期等等时,事件渲染也会被触发,并且计数也会更新。

是否有回调或我可以在 fullcalendar 中使用的东西,只有在用户对事件做出明确更改后重新渲染/删除/添加事件时才会触发。

这是我用来更新计数的方法:

eventRender: function(info) {

            //update call list counts if event on same date
            //only update call list if call list date = date of event!
            var call_list_date = moment($('#call_date').data('call_date_to_pass')).format('YYYY-MM-DD');
            var event_date = moment(info.event.start).format('YYYY-MM-DD');


            if (call_list_date == event_date) {


                var appt_status = info.event.extendedProps.appt_status_id;
                var post_appt_status = info.event.extendedProps.post_appt_status_id;

                //unconfirmed
                if ((appt_status == '2' || appt_status == '9' ||
                    appt_status == '10')  && post_appt_status == null)  {

                    var this_number = $('#unconfirmed_count').text();
                    if (!this_number) {
                        this_number = 0;
                    }
                    var unconfirmed_count = parseInt(this_number);
                    var new_unconfirmed_count = unconfirmed_count + 1;

                    $('#unconfirmed_count').text(new_unconfirmed_count);

                }

                //confirmed
                if (appt_status == '1' && post_appt_status == null)  {

                    var this_number = $('#confirmed_count').text();
                    if (!this_number) {
                        this_number = 0;
                    }
                    var confirmed_count = parseInt(this_number);
                    var new_confirmed_count = confirmed_count + 1;

                    $('#confirmed_count').text(new_confirmed_count);

                }
4

0 回答 0