2012-06-01 115 views
0

我使用基思·伍德的偉大jQuery Datepicker pluginjQuery的日期選擇器禁用日期

我使用的日期選擇在管理系統中顯示管理什麼日期已預訂了場地。

我有一個日期列表(從數據庫中提取),用於在datepicker上顯示這些預訂日期。但是,如果管理員想要更改這些日期並使日期可用,則日曆不允許我「取消選擇」已經選擇的日期。

這是一個縮小版本的代碼,但問題仍然存在,此代碼顯示jun 26 & jun 27的日期爲預訂,但我不能選擇它們以取消預訂。

<script type="text/javascript"> 

    var bookedDaysList = [[6, 26], [6, 27]]; 

       function bookedDays(date, inMonth) { 
        if (inMonth) { 
         for (i = 0; i < bookedDaysList.length; i++) { 
          if (date.getMonth() + 1 == bookedDaysList[i][0] && 
            date.getDate() == bookedDaysList[i][1]) { 
           return {dateClass: 'datepick-selected',selectable: true}; 
          } 
         } 
        } 
        return {}; 
       } 

       /* create datepicker */ 

       jQuery(document).ready(function() { 

        jQuery('#show-dates').datepick({ 
         dateFormat: 'dd-mm-yy', 
         altFormat: '[m,d]', 
         onDate: bookedDays, 
         buttonImage: 'css/images/datepicker.gif', 
         buttonImageOnly: true, 
         monthsToShow: 3, 
         multiSelect: 999, 
         showOn: 'both' 
        }); 
       }); 


</script> 

回答

0

經過一番研究,我發現這個日期選擇器,沒有工作......

http://multidatespickr.sourceforge.net/

我驚訝的是,基思·伍德插件不會滿足這個還是有我錯過了這個?

2

很簡單)。

<div class="date-picker" data-deselect="2013-12-23,2013-12-19,2013-12-31,2013-12-29,2014-01-18"></div> 


    $(".date-picker").datepick({ 
    onDate: function(date) { 
     date_str = $.datepick.formatDate('yyyy-mm-dd', date); 
     dates_unselect = $(this).data("deselect").split(","); 
     return {selectable: ($.inArray(date_str, dates_unselect) === -1)}; 
    } 
    }); 
+0

對我'onDate'回調沒有被觸發 –

相關問題