Date 在HTML输入类型日期时,日期不显示自模型

Date 在HTML输入类型日期时,日期不显示自模型,date,razor,asp.net-mvc-5,Date,Razor,Asp.net Mvc 5,我正在尝试在“创建和编辑Razor”视图上显示日期类型输入。。。日期选择器工作正常,但在编辑时,我确实从模型中获取了值,但日期选择器没有显示它 查看 <div class="form-group form-md-line-input"> @Html.TextBoxFor(model => model.InitialDate, new { @class = "form-control", type = "date" }) @Html.ValidationMessa

我正在尝试在“创建和编辑Razor”视图上显示日期类型输入。。。日期选择器工作正常,但在编辑时,我确实从模型中获取了值,但日期选择器没有显示它

查看

<div class="form-group form-md-line-input">
    @Html.TextBoxFor(model => model.InitialDate, new { @class = "form-control", type = "date" })
    @Html.ValidationMessageFor(model => model.InitialDate)
    @Html.LabelFor(model => model.InitialDate)
</div>
<input class="form-control" data-val="true" data-val-date="The field InitialDate must be a date." id="InitialDate" name="InitialDate" type="date" value="3/3/2015 12:00:00 AM">
我还从浏览器的开发者工具中删除了属性值的时间,以查看它是否有效,但它也不起作用

<input class="form-control" data-val="true" data-val-date="The field InitialDate must be a date." id="InitialDate" name="InitialDate" type="date" value="3/3/2015">


如何在日期选择器中显示模型中的日期?任何帮助都将不胜感激……

如果您使用它来生成浏览器HTML5日期选择器实现,则日期的格式需要为
yyy-MM-dd
(ISO格式)。使用
TextBoxFor()
它需要

@Html.TextBoxFor(m => m.InitialDate, "{0:yyyy-MM-dd}", new { @class = "form-control", type = "date" })
或者,将以下属性添加到属性

[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
public Nullable<System.DateTime> InitialDate { get; set; }

注意,这添加了
type=“date”
属性

您是否正在生成浏览器HTML5日期选择器(或者您是否正在使用jquery插件?@StephenMuecke browsers HTML5日期选择器…使用
@Html.TextBoxFor(model=>model.InitialDate,{0:yyyyy-MM-dd}),新的{…})
(ISO格式)非常感谢,你应该把这个作为一个答案,这样我就可以选择它…好答案。一个小的修正:ApplyEditMode应该是ApplyFormatInEditMode,至少在运行Framework4的VS2013上是这样。
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
public Nullable<System.DateTime> InitialDate { get; set; }
@Html.EditorFor(m => m.InitialDate)