Jquery UI Datepicker禁用特定日期和所有(星期一和星期二)

Posted

技术标签:

【中文标题】Jquery UI Datepicker禁用特定日期和所有(星期一和星期二)【英文标题】:Jquery UI Datepicker disable specific days and all (Mondays&Tuesday) 【发布时间】:2020-10-08 21:19:11 【问题描述】:

例如,我想禁用特定日期和所有(星期一和星期二)

 var array = ["2020-03-14","2020-03-15","2020-03-16"]

    $('#datepicker').datepicker(
        beforeShowDay: function(date)
              var string = jQuery.datepicker.formatDate('yy-mm-dd', date);
              var day = date.getDay();
              if (day != 1 && day != 2)
                  return [true]
              else if  ( array.indexOf(string) == -1)
                  return [ true]
              else
                  return [ false]

        
    );

但它只禁用 "2020-03-16" 怎么了?

【问题讨论】:

【参考方案1】:

考虑下面的代码。

jQuery(function($)
  var arr = [
    "2020-03-14",
    "2020-03-15",
    "2020-03-16"
  ];
  $('#datepicker').datepicker(
    beforeShowDay: function(dt)
      var dStr = $.datepicker.formatDate('yy-mm-dd', dt);
      var day = dt.getDay();
      var result = [false, ""];
      if (day != 1 && day != 2)
        result = [true, "available"];
      
      if(arr.indexOf(dStr) >= 0)
        result = [true, ""];
      
      return result;
    
  );
);

演出前

一个以日期为参数的函数,必须返回一个数组:

[0]:true/false表示此日期是否可选

[1]:添加到日期单元格的 CSS 类名或默认显示的 ""

[2]:此日期的可选弹出工具提示

https://api.jqueryui.com/datepicker/#option-beforeShowDay

你必须返回正确的数组。

【讨论】:

如果你也可以帮忙,点击后如何输入日期和时间,jsfiddle.net/Xx4GS/258

以上是关于Jquery UI Datepicker禁用特定日期和所有(星期一和星期二)的主要内容,如果未能解决你的问题,请参考以下文章

jQuery UI Datepicker - 禁用特定日期

Jquery UI Datepicker禁用特定日期和所有(星期一和星期二)

jQuery UI Datepicker 仅启用数组中的特定日期

在 jQuery UI Datepicker 中禁用未来日期

在jQuery UI datepicker上禁用一周中的特定日期[重复]

在 jQuery UI datepicker 中仅选择特定日期(日期列表来自 AJAX)