我正在尝试使用jquery UI datepicker显示一个日历,其中只能选择月份的最后一天。

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

最佳答案

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

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

function LastDayOfMonth(Year, Month)
{
    return(new Date((new Date(Year, Month+1,1))-1)).getDate();
}

使用以下代码来确定beforeShowDay的日期是否是该月的最后一天:
$('.selector').datepicker({
    beforeShowDay: function (date) {
        //getDate() returns the day (0-31)
        if (date.getDate() == LastDayOfMonth(date.getFullYear(),date.getMonth())) {
            return [true, ''];
        }
        return [false, ''];
    }
});

09-04 05:19