2017-07-27 36 views
0

我開發了一個應用程序,員工在其中輸入工作日。 我的老闆讓我把他們的日程安排作爲水印加在後面。 與工作日不同,日程安排是不能更改的不同事件源。 工作日的輸入不能重疊,但必須覆蓋時間表(隱藏它)。FullCalendar.js - 安排在可編輯事件源後面的日程安排

我還沒有找到如何禁止同一來源內的重疊,同時允許它在不同的來源之間。 我也不知道如何確保重疊,我有一個覆蓋。

謝謝。

+0

在選擇回調(https://fullcalendar.io/docs/selection/select_callback/)中,您可以編寫任何代碼來測試您決定查看的任何事件之間的重疊。如果你不喜歡重疊,你可以取消創建事件(當你創建或編輯事件時,你也應該在服務器端驗證它,以防有人試圖繞過GUI)。你有沒有試圖做任何事情?我也不知道你的意思,「我也不知道如何確保代替重疊,我有一個覆蓋。」你能澄清嗎? – ADyson

+0

我只是不想這麼做:[link](https://ibb.co/i5xb75) 黑暗的事件需要通過較輕的事件。 –

+1

你沒有控制權,對不起。 fullCalendar決定如何安排它們。你能做的唯一事情是,如果你事先知道你正在製作「更輕」事件的事件,你可以將它們聲明爲「背景」事件。 https://fullcalendar.io/docs/event_rendering/Background_Events/然而,唯一的缺點是背景事件默認情況下沒有在日曆上顯示其時間或標題。 – ADyson

回答

0

感謝ADyson的幫助。

所以回答我的問題是:

eventSources: [ 
    { 
     id: 'employee', 
     events: <the_ajax_code>, 
     overlap: function(stillEvent, movingEvent) { 
      return stillEvent.source.rendering == 'background'; 
     } 
    }, 
    { 
     id: 'schedule', 
     events: <the_ajax_code>, 
     editable: false, 
     rendering: 'background' 
    } 
] 

員工事件源事件只能從重疊日程表事件源事件。日程安排在後臺呈現。