Я пытался отобразить записи своей базы данных в календаре.Шаг 1 - получить данные с сервера в формате json.Шаг 2: перебрать данные для построения массива.шаг 3 построить массив массивов в соответствии со спецификациями fullcalendar.
Кажется, я отлично справляюсь с шагами 1 и 2, и если я вырезал и вставил результат, как показано, он работает.Записи в дневнике показывают, где они должны.Woohoo.Однако данные со временем будут меняться со временем, и хотелось бы, чтобы это работало автоматически без вырезания и вставки.
В большинстве случаев я получаю индексированный массив 0: ... 1: ...2: ... и я думаю, что это может быть, почему это не работает.Когда я вставляю любую текстовую переменную как данные (текст), я ничего не получаю, а когда я помещаю данные в массив, кажется, что форматирование нормально, но все равно не отображается.Больше всего расстраивает.
Оказывается, подход, который я выбрал, был правильным.Однако я использовал переменную и назвал ее календарь, который бросил гаечный ключ в работах.Это была проблема кодирования, но одна на другой странице.
Вот код, который я разбил и куда я попал, который не изящен, поскольку я поднял его до уровня текста, чтобы я мог вырезать и вставить текст для тестирования - и когда я это сделаюэто работает:
// get appointments
let events=new Array(); let apptDeat=new Array(); let start; let end; let id; let title=' '; let description=' ';
$.get('appointmentsList', function(apptList) {
console.log('apptList1:', apptList, ' Count: ',apptList.Count);
for (let x=0; x < apptList.Count; ++x) {
if (apptList.Items[x].oDdate) {
start = moment(apptList.Items[x].oDdate).format("YYYY-MM-DD"); start += 'T'+apptList.Items[x].oDtime;
} else { start =0; }
if (apptList.Items[x].oDEdate) {
end = moment(apptList.Items[x].oDEdate).format("YYYY-MM-DD"); end += 'T'+apptList.Items[x].oDEtime;
} else { end =0; }
if (apptList.Items[x].oDNumber) { title = apptList.Items[x].oDNumber; } else { title=' '; }
if (apptList.Items[x].oDTopic) { description = apptList.Items[x].oDTopic; } else { description=' '; }
id=apptList.Items[x].Id;
apptDeat += '{"title":"'+title+'","description":"'+description+'","id":"'+id+'","start":"'+start+'","end":"'+end+'","color":"blue" },';
}
apptDeat = apptDeat.substring(0, apptDeat.length-1);
events.push(apptDeat);
console.log('event: ', event, ' events: ', events, ' apptDeat: ', apptDeat);
let today = new Date();
let dateInput;
$('#calendar').fullCalendar({
eventClick: function(eventObj) { appDetail(eventObj.id); },
events: events
//[ {"title":"EVE0106820","description":" ","id":"apptDetails:8171433761442206","start":"2019-02-12T08:30","end":"2019-02-13T05:31" },{"title":"EVE0107006","description":" ","id":"apptDetails:8171581388491175","start":"2019-02-07T08:31","end":"2019-02-08T17:31" },{"title":"EVE0106551","description":"AWS DevOps","id":"apptDetails:8171864774477945","start":"2019-01-28T09:00","end":"2019-01-31T16:00" } ]
});
Кстати, я использую Chrome и инструменты разработчика, чтобы увидеть консоль переменных в журнале.