html5 – HTML-5日期字段在Chrome中显示为“mm/dd/yyyy”,即使设置了有效日期

前端之家收集整理的这篇文章主要介绍了html5 – HTML-5日期字段在Chrome中显示为“mm/dd/yyyy”,即使设置了有效日期前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我刚刚升级一个ASP.Net MVC应用程序到MVC-4。基于DateTime值的输入的字段编辑器现在包括HTML-5 type =“date”属性/值声明。

现在,在Chrome中查看时,我的日期输入在输入字段中显示为“mm / dd / yyyy”

即使当我使用value属性传递格式正确的日期时:

<input value="2012/10/02" type="date"/>

我仍然在输入框中输入“mm / dd / yyyy”,直到用户手动更改该值。

问题似乎是与Chrome,并独立于我的后端框架。看到这个问题在行动:jsFiddle

…编辑记录的大问题,当然。如果用户拉起已经具有有效日期的记录,则不会通过提交时的验证,除非他/他单击该字段并手动重置该值。

没有与其他浏览器的问题。

这是Chrome的错误吗?或者我错过了一些关于HTML-5日期字段应该工作的方式?

更新
看到这个修订小提琴:http://jsfiddle.net/HudMe/5/它有一个HTML-4和一个HTML-5日期输入,每个“10/01/2012”设置为页面加载的值。

点击任一日期字段。
Javascript应该利用该元素的字段值创建警报。

由于有效日期已与value属性一起传递,因此应显示“10/01/2012”,但在Chrome中,对于HTML-5日期字段,不显示任何内容。手动重置此值,然后再次单击,它现在将显示

来自HTML5字段的值在Safari,Firefox,IE和Opera中的页面加载后显示和警告,而不进行调整。

注意接受答案:
对于Asp.net mvc-4的其他用户,您可以使用视图模型中DateTime字段声明的[DisplayFormat]属性调整显示格式。 (在http://stackoverflow.com/a/12634470/613004找到)

解决方法

在chrome中设置值,你需要做YYYY-MM-DD我猜是因为这个工作: http://jsfiddle.net/HudMe/6/

所以要使其工作,你需要设置日期为2012-10-01

猜你在找的HTML5相关文章