jQuery UI DatePicker - 禁用除月末之外的所有日期

Ian*_*ber 11 jquery-ui datepicker

我正在尝试使用jquery UI datepicker来显示仅可选择月份最后一天的日历.

我已经成功地使用了beforeShowDay事件来禁用一周中的几天,但不确定如何使用它来禁用除了月份的最后一天之外的所有内容.

小智 15

在日历上显示的每个日期都会调用beforeShowDay.调用beforeShowDay时,您需要确定传递给它的日期是否是该月的最后一天.

以下JScript将返回给定年份和月份的月份的最后一天.

function LastDayOfMonth(Year, Month)
{
    return(new Date((new Date(Year, Month+1,1))-1)).getDate();
}
Run Code Online (Sandbox Code Playgroud)

使用以下代码确定beforeShowDay的日期是否是该月的最后一天:

$('.selector').datepicker({
    beforeShowDay: function (date) {
        //getDate() returns the day (0-31)
        if (date.getDate() == LastDayOfMonth(date.getFullYear(),date.getMonth())) {
            return [true, ''];
        }
        return [false, ''];
    }
});
Run Code Online (Sandbox Code Playgroud)