beforeShowDay方法如何工作?(Jquery UI datepicker)

cha*_*hap 4 javascript jquery jquery-ui jquery-ui-datepicker

我一直试图在很长一段时间内找到一个明确的解释,但我似乎无法理解这种方法是如何工作的.以下是Jquery UI API的官方文档.其他人可能会清楚,但我发现它有点模糊.我只是想采取一系列日期并禁用它们.我能够使所有日期都不可选,但不是我想要的日期.

beforeShowDayType:Function(Date date)

默认值:null

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

[0]:true/false表示此日期是否可选[1]:要添加到日期单元格的CSS类名称或默认演示文稿的""[2]:此日期的可选弹出工具提示

在显示日期选择器之前,每天都会调用该函数.


到目前为止,这是我的(不完整)代码.

$(document).ready(function() {
    var array = ["2014-01-03","2014-01-13","2014-01-23"];
    $('#fromDate').datepicker({
        dateFormat: "yy-mm-dd",
        beforeShowDay: function(date) {
            {
                return [false, "", "Booked out"];
            } else {
                return [true, "", "available"];
            }
        }
    });
});
Run Code Online (Sandbox Code Playgroud)

Jai*_*ain 5

试试这个:

beforeShowDay: function(date) {
    if($.inArray($.datepicker.formatDate('yy-mm-dd', date ), array) > -1)
    {
        return [false,"","Booked out"];
    }
    else
    {
        return [true,'',"available"];
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 同意,但这仅当jquery构造函数($)与其他绑定。 (2认同)