【问题标题】:FullCalendar render events dynamicFullCalendar 动态呈现事件
【发布时间】:2019-07-15 11:29:17
【问题描述】:

我正在使用Bootstarp v4.0FullCalendar.io 我创建了FullCalendar,如下所示

document.addEventListener('DOMContentLoaded', function() {
    var calendarEl = document.getElementById('calendar');
    var calendar, events = localStorage.reservedRooms ? JSON.parse(localStorage.reservedRooms) : []
    calendar = new FullCalendar.Calendar(calendarEl, {
        plugins: ['bootstrap', 'interaction', 'dayGrid', 'timeGrid', 'list'],
        header: {
            left: 'prev,next today',
            center: 'title',
            right: 'dayGridMonth,timeGridWeek,timeGridDay,listMonth'
        },
        //defaultDate: '2019-04-12',
        weekNumbers: true,
        navLinks: true, // can click day/week names to navigate views
        editable: true,
        eventLimit: true, // allow "more" link when too many events
        events: events
    });
    calendar.render();
});

我将来自localStorage的事件放在哪里

我想从 jQuery 按钮单击加载全日历,但我做不到。我还尝试创建单独的 HTML 文件并尝试在 div 中加载该 HTML 文件 $.get 但它从不渲染。我也尝试通过calendar.addEventSource( source ) 插入事件,但这也不起作用。

我的 jQuery 按钮点击

$(document).ready(function() {
    $('#checkAvailability').click(function(e) {
        $.get(
            '../Shared Documents/html/meetingRoom/meetingRoomSearchResult.html',
            function(data) {
                $('#dvResult').html(data)
            })
    })
})

请帮我动态加载日历。

【问题讨论】:

  • 你的点击事件在哪里,如何动态添加到页面中?
  • 它在 jQuery 文档里面准备好了 @madalinivascu
  • 我在你的问题中没有看到

标签: javascript arrays json fullcalendar fullcalendar-4


【解决方案1】:

更改您的 ajax 以仅返回事件(作为 json),当 ajax 成功时初始化日历

var calendar;
$('#checkAvailability').click(function(e) {
$.get(
    '../Shared Documents/html/meetingRoom/meetingRoomSearchResult.html',
function(events) {
    if(calendar) calendar.destroy();
    var calendarEl = document.getElementById('calendar');
    calendar = new FullCalendar.Calendar(calendarEl, {
          plugins: [ 'bootstrap', 'interaction', 'dayGrid', 'timeGrid', 'list' ],
          header: {
            left: 'prev,next today',
            center: 'title',
            right: 'dayGridMonth,timeGridWeek,timeGridDay,listMonth'
          },
          //defaultDate: '2019-04-12',
          weekNumbers: true,
          navLinks: true, // can click day/week names to navigate views
          editable: true,
          eventLimit: true, // allow "more" link when too many events
          events: events
        });
        calendar.render();
   });
})

将 div 添加到您的主页

  <div id='calendar'></div>

【讨论】:

  • 让我检查一下并回复你@madalinivascu
  • @madalinivascu 抱歉,日历永远不会加载,也不会显示错误
  • 那么你的点击不是调用ajax
  • 对不起是我的错
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-15
相关资源
最近更新 更多