8

我想突出显示本月的某些日子。我可以在第一个月执行此操作,但不能在单击“下个月”或“上个月”后的新月份执行此操作。我尝试使用 onChangeMonthYear 事件,但这会在新(或上一个)月份呈现之前执行。

有任何想法吗?

4

3 回答 3

1

可能您最好的选择是beforeShowDay回调。

http://jqueryui.com/demos/datepicker/#event-beforeShowDay

您可以根据日期条件为单元格指定一个新的类名。

于 2010-02-22T17:38:37.330 回答
1

您可以使用我的jQuery datepicker 使用自定义的“renderCallback”来执行此操作。

例如,此示例禁用周末并添加一个类来设置那些日子的样式。还有许多其他更复杂的示例也可能有所帮助...

$('.date-pick')
    .datePicker(
        {
            renderCallback:function($td, thisDate, month, year)
            {
                if (thisDate.isWeekend()) {
                    $td.addClass('weekend');
                    $td.addClass('disabled');
                }
            }
        }
    );

此外,如果您愿意,一旦日历重新呈现,就会有一个dpMonthChanged事件,您可以循环遍历日历的内容并突出显示......

于 2010-02-22T17:41:07.233 回答
0
        hack:
         $('#calendar').datepicker({
                                    onChangeMonthYear: function (year, month, inst) {
                                        setEventsDay()
                                    }
                                 });
function setEventsDay(){
    var days = $(".ui-state-default");
                   console.log(days.length);   //31 from august to Sep 
        setTimeout(function () {
                    var days = $(".ui-state-default");
                   console.log(days.length);     //30 `enter code here`from august to Sep 

                }, 100)
    }
于 2013-08-28T12:27:49.083 回答