Представление работает правильно, и я вижу средство выбора даты и времени, но когда я нажимаю кнопку «Отправить», поля даты и времени становятся пустыми (если они могут быть обнулены), или 01/01/0001 00:00, если они не обнуляются.
View
<div class="form-group">
@Html.LabelFor(model => model.LaycanStartDate, htmlAttributes: new { @class = "control-label col-md-12" })
<div class="col-md-10">
@Html.EditorFor(model => model.LaycanStartDate, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.LaycanStartDate, "", new { @class = "text-danger" })
</div>
</div>
<script>
$(function () {
$.validator.methods.date = function (value, element) {
var date = moment(value, "DD/MM/YYYY HH:mm", true).format("DD/MM/YYYY HH:mm");
return this.optional(element) || moment(date, "DD/MM/YYYY HH:mm", true).isValid();
}
});
</script>
Модель
[Display(Name = "LaycanStartDate", ResourceType = typeof(Resources.Resources))]
[DataType(DataType.DateTime)]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MM/yyyy HH:mm}")]
public DateTime LaycanStartDate { get; set; }
DateTime.cshtml
@model DateTime?
@(Html.Kendo().DateTimePickerFor(m => m).HtmlAttributes(new { style = "width: 100%; max-width: 280px", title = "datetimepicker"}))