2

我注意到 Kendo 日期选择器有一个奇怪的问题。

@(Html.Kendo().DatePickerFor(m => m.BirthDate)
    .Start(CalendarView.Century)
)

@(Html.Kendo().DatePickerFor(m => m.FutureDate)
    .Start(CalendarView.Month)    
)

如果没有默认值,两个日期选择器都会以当前日期为中心打开。但是,如果您选择一个日期,另一个将关注同一日期。例如,如果我为 BirthDate 选择 1970 年 1 月 7 日,FutureDate 会以 1970 年 1 月为中心打开。

如果提供了默认值,则每个日期选择器仍专注于该日期。

我希望每个日期选择器都专注于当前日期,但我不想将当前日期设置为默认日期——我希望每个日期选择器在用户设置之前保持空白。

有什么解决办法吗?我目前在 Kendo 2012.3.1315 上——最新版本会发生这种情况吗?如果没有,我也许可以说服我的团队升级。

4

1 回答 1

0

稍后再回答我自己的问题:

我能够测试最新版本的 Kendo(2013 年第 2 季度),看来此问题已得到修复。不幸的是,我的团队目前不想升级。我创建了这个 Javascript 修复程序来解决这个问题。

function fixKendoDatePicker(datepicker) {
    if (!datepicker.value()) {
       datepicker.value(new Date());
       datepicker.dateView._calendar();
       datepicker.value(null);
    }
}

对 _calendar() 的调用使小部件更改其内部日历以匹配其值 - 否则,除非打开日期选择器弹出窗口,否则它通常不会更改,并且此方法将无效。

于 2013-08-22T14:21:55.827 回答