2016-09-14 33 views
0

ASP.NET MVC 5日期不会在Chrome中显示。ASP.NET MVC 5日期将不会显示在Chrome中

应用程序中没有任何文化设置。

如何解决?

的Html

@Html.EditorFor(model => model.Changed, 
          new 
          { htmlAttributes = 
            new { @class = "form-control", @Value = Model.Changed.ToString("MM/dd/yyyy") } }) 

模型

[DataType(DataType.Date)] 
[DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}", ApplyFormatInEditMode = true)] 
public System.DateTime Changed { get; set; } 

enter image description here

+1

的[MVC4 DataType.Date EditorFor将不会显示在Chrome日期值,在Internet Explorer精]可能的复制(http://stackoverflow.com/问题/ 12633471/mvc4-datatype-date-editorfor-wont-display-date-value-in-chrome-fine-in-interne) –

+0

@ J.Swietek不,不,不行,人 –

+0

你试图删除DataType属性如链接答案中所述? –

回答

2

在支持HTML5 datetime浏览器和datetime输入类型,该值提供必须为ISO格式,即YYYY-MM-DDdate,YYYY-MM-DDTHH:MM:SSdatetime等。如果它不是这种格式,浏览器无法解析该值,因此将输入视为没有价值。因此,所有你需要的是你的DisplayFormat属性更改为:

[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)] 
+0

注意OP还需要删除新的{@Value = Model.Changed.ToString(“MM/dd/yyyy”)} ' –