2016-08-13 44 views
2

全部,從Calendario.js中刪除事件

我目前正在使用Calendario.js,並且事情工作得很好。但是,我試圖找出刪除事件的方法。

我已經想出瞭如何通過傳入cal.setData()函數的字典添加事件。但是,當我從字典中刪除事件並調用相同的cal.setData()函數時,它不會成功刪除它。有沒有人知道這樣做?文檔相當稀少。

HTML

<script type="text/javascript" src="{%   static'main/Calendario/js/jquery.calendario.js' %}"></script> 
<script type="text/javascript" src="{% static 'main/Calendario/js/modernizr.custom.63321.js' %}"></script> 

<link rel='stylesheet' href="{% static 'main/Calendario/css/calendar.css' %}" /> 
<link rel='stylesheet' href="{% static 'main/Calendario/css/custom_2.css' %}" /> 
<link rel='stylesheet' href="{% static 'main/lightbox/lightbox.css' %}" /> 

    <div class='container'> 
     <div class='col-md-8 col-md-offset-2'> 
      <div class="custom-calendar-wrap"> 
       <div id="custom-inner" class="custom-inner"> 
        <div class="custom-header clearfix"> 
         <nav> 
          <span id="custom-prev" class="custom-prev"></span> 
          <span id="custom-next" class="custom-next"></span> 
         </nav> 
         <h2 id="custom-month" class="custom-month"></h2> 
         <h3 id="custom-year" class="custom-year"></h3> 
        </div> 
        <div id="calendar" class="fc-calendar-container"></div> 
       </div> 
      </div> 
     </div> 
    </div> 

的Javascript

cal = $calendar.calendario({ 
      onDayClick : function($el, $contentEl, dateProperties) { 
       if(dateProperties.day.length==1){ 
        dateProperties.day = 0 + dateProperties.day; 
       } 
       if(dateProperties.month.toString().length==1){ 
        dateProperties.month = 0 + dateProperties.month.toString(); 
       } 

       if($el.hasClass('fc-content')){ 

        $el.removeClass('fc-content'); 

        console.log($el); 
        delete codropsEvents[dateProperties.month + '-' + dateProperties.day + '-' + dateProperties.year]; 
       } 
       else{ 
        codropsEvents[dateProperties.month + '-' + dateProperties.day + '-' + dateProperties.year]='<a href="#"></a>' 
        console.log(codropsEvents); 
        cal.setData(codropsEvents); 
       } 

       if($contentEl.length > 0) { 
        showEvents($contentEl, dateProperties); 
       } 

      }, 
      caldata : codropsEvents, 
      displayWeekAbbr : true 
     }), 

回答

0

是,如果你要使用最新版本的Calendario很容易 - https://github.com/deviprsd21/Calendario$('#calendar').calendario('setData', data, clearData);,如果你在clearData傳遞true所有以前的數據將被清除並由新的數據替換。