Пустое значение по умолчанию в Kendo DatePicker

Мне нужно, чтобы значение по умолчанию datetime picker было пустым.

@(Html.Kendo().DatePickerFor(model => model.RevisionDate)
              .Name("RevisionDate")
                )

"RevisionDate" является свойством datetime в asp.net модель mvc.

как он в настоящее время отображается

enter image description here

и мне нужно, чтобы отобразить его, как показано ниже

enter image description here

3 ответов


код RevisionDate свойство по умолчанию имеет значение DateTime.MinValue что 01/01/0001 ( все DateTime свойства ведут себя подобным образом). Вот почему Kendo UI DatePicker показывает это так. Решение сделать собственностью и nullable DateTime (DateTime?), значение по умолчанию которого null.


Если вы не хотите сделать свойство nullable, вы также можете сделать это следующим образом:

@(Html.Kendo().DatePickerFor(m => m.Property).HtmlAttributes(new { value = "" }))

у меня была такая же проблема с ComboBoxFor ComboBoxFor(m => m.LocationId).Value(Model.LocationId == 0 ? string.Empty : Model.LocationId.ToString()).

но я вижу, что этот подход не работает на DatePickerFor(это может быть ошибка).

обходной путь может быть сделан в JS if($('#RevisionDate ').val() == "1/1/0001") { $('#RevisionDate ').val("") } но я бы рекомендовал подход Атанаса с нулевым полем.