我正在我的网页上使用 HTML5 元素。默认情况下,输入type="date"将日期显示为YYYY-MM-DD.
type="date"
YYYY-MM-DD
问题是,是否可以将其格式更改为:DD-MM-YYYY?
DD-MM-YYYY
无法更改格式
我们必须区分有线格式和浏览器的表示格式。
HTML5 日期输入规范是指RFC 3339 规范,它指定了一个完整的日期格式,等于:yyyy-mm-dd。有关详细信息,请参阅RFC 3339 规范的第 5.6 节。
yyyy-mm-dd
这种格式由valueHTML 属性和 DOM 属性使用,并且是在进行普通表单提交时使用的格式。
value
浏览器在如何呈现日期输入方面不受限制。在撰写本文时,Chrome、Edge、Firefox 和 Opera 已支持日期(请参阅此处)。它们都显示一个日期选择器并格式化输入字段中的文本。
桌面设备
对于 Chrome、Firefox 和 Opera,输入字段文本的格式取决于浏览器的语言设置。对于 Edge,它基于 Windows 语言设置。遗憾的是,所有 Web 浏览器都会忽略操作系统中配置的日期格式。对我来说,这是非常奇怪的行为,在使用这种输入类型时需要考虑一些事情。en- us例如,将显示其操作系统或浏览器语言设置为的荷兰用户,01/30/2019而不是他们习惯的格式:30-01-2019.
en- us
01/30/2019
30-01-2019
Internet Explorer 9、10 和 11 以有线格式显示文本输入字段。
移动设备
特别是对于 Android 上的 Chrome,格式基于 Android 显示语言。我怀疑其他浏览器也是如此,尽管我无法验证这一点。