Semantic UI Календарь Модал не всплывает - PullRequest
0 голосов
/ 09 марта 2019

Я реализовал семантический пользовательский интерфейс для использования календаря, который в принципе действительно великолепен и работает отлично.Единственная проблема заключается в том, что календарь находится в модальном режиме, и когда он запускается, модальное окно выглядит следующим образом: https://i.stack.imgur.com/WfB7K.png

Я хочу, чтобы календарь уже всплывал, и мне не нужно нажимать наКнопка «сегодня», чтобы открыть календарь.

Я прочитал, что это должно что-то делать с наблюдением, но я не знаю, как это изменить и куда поместить этот кусок кода. (https://github.com/mdehoog/Semantic-UI-Calendar/issues/40)

Это моя функция JS:

function devicesForCalendar(type) {

$('#openCalView').click(function () {
    var valueArray = [];

    $('.check:checked').each(function () {
        valueArray.push($(this).val());
    });
    if (valueArray.length == 0) {
        alert("No devices selected!");
        $('#calendarInsert').fullCalendar('destroy');
    }
    else {
        $.ajax({
            url: "db-functions.php",
            method: "POST",
            data: { data: valueArray, change: 'chosenCalendar', type: type },
            success: function (data) {

                var events = JSON.parse(data);

                $('#calendarInsert').fullCalendar('destroy');
                $('#calendarInsert').fullCalendar({
                    header: {
                        left: 'prev,next today',
                        center: 'title',
                        right: 'month,basicWeek,basicDay'
                    },
                    defaultDate: new Date(),
                    navLinks: true, // can click day/week names to navigate views
                    editable: true,
                    eventLimit: true, // allow "more" link when too many events
                    events: events
                });
            }
        });
    }
});

}

1 Ответ

0 голосов
/ 09 марта 2019

Если вы спрашиваете, как получить календарь за пределами модального режима, вам нужно будет опубликовать HTML-код, чтобы мы могли знать, как работает дизайн календаря. Чтобы устранить проблему отсутствия необходимости нажимать кнопку Today для отображения календаря, проблема заключается в назначении переменной defaultDate. Вы устанавливаете его равным Date объекту, но в итоге получается формат примерно «Sat Mar 09 2019 12:08:39 GMT-0500 (восточное стандартное время)». Он должен быть в формате ISO "гггг-мм-дд". Чтобы сделать это, вы можете просто ввести сегодняшнюю дату или сделать:

var d = new Date();
var e = d.getMonth();
if (e < 10) {
   var e2 = ("0" + e).slice(-2);
}
var f = d.getDate();
if (f < 10) {
   var f2 = ("0" + f).slice(-2);
}
var g = d.getFullYear() + "-" + e2 + "-" + f2;
// Later in the code
defaultDate: g,

Заметьте, я использую метод slice(), чтобы поставить начальные нули на однозначные числа, а Date.getMonth() и Date.getDate() возвращают такие цифры, как 2 и 7.

...