在beforeShowDay中进行多次检查 - jQueryUI datepicker

时间:2016-11-16 14:43:52

标签: javascript jquery jquery-ui datepicker

简而言之,我希望datepicker首先禁用所有星期日 - 我使用此代码:

jQuery("#datepicker").datepicker({ 
    beforeShowDay: function(day) {
       var day = day.getDay();
       if (day == 0) {
         return [false, "busy"]
       } else {
         return [true, "free"]
       }
     }
});

有效。但是我还想禁用存储在数组中的范围内的特定日期:

jQuery("#datepicker").datepicker({ 
    beforeShowDay: function (date) {    
        var dateString = jQuery.datepicker.formatDate('yy-mm-dd', date);
        return [dateRange.indexOf(dateString) == -1];
    }
});

这也可以解决我想要的日子。

问题:这两个代码分开工作 - 如何将它们组合起来,以便星期日被禁用,我的自定义日期来自数组?

1 个答案:

答案 0 :(得分:1)

希望这会对你有所帮助。请尝试以下代码:

$(function(){  
   $('#thedate').datepicker({
      beforeShowDay: function(date) {
         var dateString = jQuery.datepicker.formatDate('yy-mm-dd', date);
         var day = date.getDay();
         if (day == 0 || dateRange.indexOf(dateString) != -1) {
                return [false, "busy"]
         } else {
                return [true, "free"]
         }
     }
  });   
});

以下是jsfiddle