Asp.net - Подтверждение начальной загрузки - FullCalendar => странное поведение синглтона - PullRequest
0 голосов
/ 23 мая 2019

Я пытаюсь реализовать подтверждение Bootstrap

поверх FullCalendar

приведенный ниже код работает в основном для всего

, за исключением случаев, когда для "singleton" установлено значение "true""

<script src="~/Scripts/jquery-3.3.1.slim.min.js"></script>
<script src="~/Scripts/jquery-3.3.1.min.js"></script>
<script src="~/Scripts/umd/popper.js"></script>
<script src="~/Scripts/umd/popper.min.js"></script>
<script src="~/Scripts/jquery-ui.min.js"></script>
<script src="~/Scripts/bootstrap.bundle.js"></script>
<script src="~/Scripts/bootstrap-confirmation.js"></script>
<script src="~/Scripts/moment-with-locales.min.js"></script>
<script src="~/Scripts/fullcalendar/fullcalendar.min.js"></script>
<script src="~/Scripts/fullcalendar/locale-all.js"></script>
<script src="~/Scripts/jquery.signalR-2.4.0.min.js"></script>
<script src="/signalr/hubs"></script>
<script type="text/javascript">


$(function () {
            hub = $.connection.planningHub;
            hub.client.update = function (v, s, e, is, ie) {
                fc.fullCalendar('refetchEvents');
            };
            $.connection.hub.start().done(function () {
                fc = $('#calendar').fullCalendar({
                    defaultView: 'agendaWeek',
                    header: {
                      ...
                    },
´
                    events: {
                      ...
                            };
                        }
                    },

                    eventClick: function (calEvent, jsEvent, view) {
                        jsEvent.preventDefault();
                        var fcId = calEvent.id;
                        var eventTarget = jsEvent.target;

                        $(eventTarget).confirmation({
// MAYBE HERE!

                            rootSelector: eventTarget,
// MAYBE HERE!

                            placement: 'left',
                            title: 'do you want to delete?',

// HERE!
                            singleton: true,
// HERE!
                            popout: false,
                            onConfirm: function () {
                                $.post('@Url.Action("DeletePlanning")', { id: fcId}, function (r) {
                                    switch ( r.status) {
                                        case 'success':
                                            fc.fullCalendar('refetchEvents');
                                            break;
                                        case 'error':
                                            console.error(r.message);
                                            rv();
                                            break;
                                     }
                                   }
                                );
                            },
                            oncancel: function () { },
                        });
                        $(eventTarget).confirmation('show');
                    }
                });
            });
        });

в этот момент он продолжает создавать множественные всплывающие окна

с той разницей, что они закрываются сразу при закрытии.

Любая идея?

Мне действительно нужно, чтобы он был синглтоном!

(простите, я действительно новичок в js и asp.net)

заранее спасибо за помощь

...