Календарь JQuery не отображает забронированные даты из базы данных как отмеченные - PullRequest
0 голосов
/ 27 мая 2019

У меня есть этот календарь jquery, где можно выбрать несколько дат и поместить их в массив. Эти даты сохраняются в БД позже. Эта часть отлично работает.

Позднее после обновления страницы календарь не отображает все эти даты, как отмечено.

Даты в базе данных хранятся в виде строки в одной ячейке. Я пытался вернуть его как строку, а также массив после взрыва. Не работает.

Это мой код:

var preSavedDates = [];

// Function1 Starts
$.ajax({
    type:'POST',
    url:'../includes/ajax/availabily_dates_fetch.php',
    data: "&listingID=" + listingID,
    datatype: 'json',
    success:function(response){
        preSavedDates = response;
        //alert([response]);
    }
});
// Function1 Ends

$('#show-next-month').calendar({
    num_next_month: 11,
    num_prev_month: 0,
    unavailable: preSavedDates, // Here is the variable needed
    //unavailable: ['2019-2-5','2019-3-6','2019-1-25'], Works
    onSelectDate: function(date, month, year, thisEvent){
        var dateData = [year, month, date].join('-');
        dateClickEvent(dateData, thisEvent);
    }
});

// Function2 to cross check if variable exists
alert(preSavedDates);
// Function2 Ends
// Produces - 2019-2-5,2019-3-6,2019-1-25

Я ожидаю, что даты из базы данных будут выделены в календаре.

1 Ответ

1 голос
/ 27 мая 2019

Это был глупый я.

Календарь инициализировался при готовности документа, а значения для дат были получены для события позднее.

Таким образом, календарь рассматривал значение по умолчанию var preSavedDates = [];.

Теперь, когда я установил календарь для инициализации одновременно с получением дат, он работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...