默认情况下,输入 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 语言设置。遗憾的是,所有网络浏览器都会忽略操作系统中配置的日期格式。对我来说,这是非常奇怪的行为,也是使用这种输入类型时需要考虑的事情。例如,将操作系统或浏览器语言设置为 en-us
的荷兰用户将显示 01/30/2019
而不是他们习惯的格式:30-01-2019
。
Internet Explorer 9、10 和 11 显示具有连线格式的文本输入字段。
移动设备
专门针对 Android 上的 Chrome,格式基于 Android 显示语言。我怀疑其他浏览器也是如此,尽管我无法验证这一点。
关于html - 有没有办法改变输入类型 ="date"格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48924275/