簡體   English   中英

FullCalendar dayClick js事件未分離

[英]FullCalendar dayClick js event not detaching

我的網頁上有一個日歷。 日歷中有事件。 dayClick事件處理程序中,我正在調用一個函數。

問題是單擊日期框時第一次出現該函數被稱為1次。 第2次調用該函數2次,第3次調用3次,依此類推。

我可以猜到問題是點擊事件沒有脫離。 但我無法解決。

編碼:

$('#calendar').fullCalendar({
    header: {
        left: 'prev,next today',
        center: 'title',
        right: 'month,agendaWeek,agendaDay'
    },
    eventLimit: true,
    defaultView: 'month',
    editable: false,
    eventClick: function (event) {
        if (event.url) {
            window.open(baseUrl + event.url);
            return false;
        }
    },
    dayClick: function (date, allDay, jsEvent, view) {
        var dateString = '';
        dateString = moment(date, 'YYYY-MM-DD').format().split('T')[0];
        $('#popup').modal('toggle');
        $('#popup').on('shown.bs.modal', function () {
        AsyncFn().done(function (result) {
            AnotherAsyncFn(function () {
                SomeFunction();  //This function gets called multiple times                                           
                });
            });                   
        });                        
    }
}); 

我不確定如何分離此事件。 可以通過使用offunbind ,但不知道具體如何。 有人可以為此提供幫助嗎?

您應該使用off方法。

$('#popup').on('shown.bs.modal', function () {
    $('#popup').off('shown.bs.modal');
    AsyncFn().done(function (result) {
        AnotherAsyncFn(function () {
            SomeFunction();  //This function gets called multiple times                                           
        });
    });                   
});

在再次附加事件之前,嘗試使用jQuery.unbind()

dayClick: function (date, allDay, jsEvent, view) {
    var dateString = '';
    dateString = moment(date, 'YYYY-MM-DD').format().split('T')[0];
    $('#popup').modal('toggle');
    $('#popup').unbind("shown.bs.modal").on('shown.bs.modal', function () {
    AsyncFn().done(function (result) {
        AnotherAsyncFn(function () {
            SomeFunction();  //This function gets called multiple times                                           
            });
        });                   
    });                        
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM