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