2016-05-23 283 views
0

我發現了一些建議方法,可以隱藏當前不屬於當前月份的事件:https://github.com/fullcalendar/fullcalendar/issues/437在fullcalendar中顯示僅與當前月份相關的事件?

我想使用下面的代碼來隱藏事件。我試圖實現下面的下面的代碼:

//what month the event is 

var theEventMonth = event.start.getUTCMonth(); 
//what month we're viewing 
var showingMonth = t.start.getMonth(); 

if(theEventMonth != showingMonth){ 
    className = 'hiddenEvent '; 
}else{ 
    className = 'fc-event fc-event-hori '; 
} 
--- 

下是顯示不應該出現在當月的活動圖像:

enter image description here

我不知道其中下面的代碼應該在下面的代碼(我用ColdFusion和村)被添加:

<cffunction name="FullCalendar"> 

    <cfscript> 

     var calendarid = $.getbean('content').loadby(title='Regal Events').getcontentid(); 


    </cfscript> 
    <cfsavecontent variable="local.str"> 
     <cfoutput>   

       <div id="UpcomingCal" class="calendarResize"> 
       </div> 
     <script> 

     mura.loader() 
      .loadcss("#$.siteConfig('requirementspath')#/fullcalendar/fullcalendar.css",{media:'all'}) 
      <!---.loadcss("#$.siteConfig('requirementspath')#/fullcalendar/fullcalendar-custom.css",{media:'all'})---> 
      .loadcss("#$.siteConfig('requirementspath')#/fullcalendar/fullcalendar.print.css",{media:'print'}) 
      .loadjs(
       "#$.siteConfig('requirementspath')#/fullcalendar/lib/moment.min.js", 
       "#$.siteConfig('requirementspath')#/fullcalendar/fullcalendar.min.js", 
       "#$.siteConfig('requirementspath')#/fullcalendar/gcal.js", 
       function(){ 
        $('##UpcomingCal').fullCalendar({ 
         weekMode: 'variable', 
         eventSources: [ 
          { 
           url: '#variables.$.siteConfig('requirementspath')#/fullcalendar/proxy.cfc?calendarid=#esapiEncode("javascript",CalendarID)#' 
           , type: 'POST' 
           , data: { 
            method: 'getFullCalendarItems' 
            , calendarid: '#esapiEncode("javascript",CalendarID)#' 
            , siteid: '#variables.$.content('siteid')#' 
            , categoryid: '#esapiEncode('javascript',variables.$.event('categoryid'))#' 
            , tag: '#esapiEncode('javascript',variables.$.event('tag'))#' 
           } 
           <!---, color: '#this.calendarcolors[colorIndex].background#' 
           , textColor: '#this.calendarcolors[colorIndex].text#'---> 
           , error: function() { 
            $('##mura-calendar-error').show(); 
           } 
          }, 
         ] 
        }); 
       } 
       ) 
     </script> 

     </cfoutput> 
    </cfsavecontent> 
    <cfreturn local.str /> 
</cffunction 

任何幫助,將不勝感激。謝謝

回答

0

使用方法如下。這對我有用。

dayRender:function(date,cell,view){ // added view in arguments 
var startmonth = view.start.getMonth()+1; 
if(month == startmonth) 
{ 
    your codes; 
} 
+0

由你的代碼,日曆正在生成的代碼? –

+0

對不起,希望你已經解決了這個問題 – ElanBalu

0

當我經歷的全日曆JS文件,我沒有找到任何解決方案。所以像下面一樣使用它。

var date = new Date(); 
    var d = date.getDate(); 
    var m = date.getMonth(); 
    var y = date.getFullYear(); 


    var month = Array(); 
    for (var i = 0;i < event_days.length; i++){ 

    var cal_month = m + 1; 
    var currnt_month = event_days[i].date.split("-").map(Number); 

    if(currnt_month[1] == cal_month){ 
     var monthSource = new Object(); 
     monthSource.title = '<span style="color: #ff1103">'+event_days[i].base_currency+'&nbsp;&nbsp;'+event_days[i].d_adult_sharing+'</span><br><a class="btn btn-primary btn-xs book_click" >Book</a>'; 
     monthSource.start = ''+event_days[i].date+''; 

     month[i] = monthSource; 
     } 
    } 

其中event_days是我的數組,其中包含我想要顯示我的事件的所有日期。

併爲下個月或上個月我使用。

$(document).on("click", ".fc-button-next" , function(){ 

    alert('nextis clicked, do something'); 
}); 

我希望這會有所幫助。

相關問題