有什么办法可以改变输入类型="日期"的格式?

我在我的网页上使用HTML5元素。默认情况下,输入type="date"显示日期为YYYY-MM-DD

问题是,是否可以把它的格式改成这样的。DD-MM-YYY

解决办法

不可能改变格式

我们必须区分电线上的格式和浏览器的演示格式。

线上格式

HTML5日期输入规范]1参考了RFC3339规范,该规范规定了一个完整的日期格式,等于。yyyy-mm-dd。更多细节请参见RFC3339规范的第5.6节

显示格式

浏览器在展示日期输入的方式上是不受限制的。在撰写本文时,Chrome、Edge、Firefox和Opera都有日期支持(见这里)。它们都会显示一个日期选择器,并对输入栏中的文本进行格式化。

桌面设备

对于Chrome、Firefox和Opera,输入栏的文本格式是基于浏览器的语言设置。对于Edge,它是基于Windows语言设置的。可悲的是,所有网络浏览器都忽略了操作系统中配置的日期格式。对我来说,这是非常奇怪的行为,在使用这种输入类型时需要考虑。例如,将操作系统或浏览器语言设置为 "en-us "的荷兰用户将显示 "01/30/2019",而不是他们所习惯的格式。30-01-2019.

Internet Explorer 9、10和11显示的是线格式的文本输入栏。

移动设备

具体到安卓上的Chrome浏览器,其格式化是基于安卓的显示语言。我怀疑其他浏览器也是如此,不过我还没能证实这一点。

评论(26)

我相信浏览器会使用本地的日期格式。我认为这不可能改变。当然,你可以使用一个自定义的日期选择器。

评论(3)

谷歌浏览器在其最后一个测试版中终于使用了type=date'的输入,并且格式为DD-MM-YYY'。

所以一定有办法强制使用特定的格式。 我正在开发一个HTML5网页,现在不同格式的日期搜索都失败了。

评论(5)