【问题标题】:HTML5 input type date formattingHTML5 输入类型日期格式
【发布时间】:2019-01-10 06:46:38
【问题描述】:

我的 Angular 6 应用程序必须使用 HTML5 input type='date'。我想将其显示为 dd/MM/yyyy 格式。但是当我将本地电脑时间格式更改为 yyyy-MM-dd chrome 时,会自动将时间格式更改为本地电脑时间格式。但我想为所有用户将其设置为 dd/MM/yyyy。 (因为他们的电脑时间格式可能不同)我该如何解决这个问题。是他们格式化它的任何方法。

如果我将格式属性设置如下,它将不起作用。

<input type="date" format="dd/MM/yyyy"/>

【问题讨论】:

标签: html date datepicker


【解决方案1】:

简短的回答是目前无法格式化日期(没有可用的format 属性)。

但是,您可能想要一个解决方案,所以这里有一些您可能想尝试的选项

1) 使用&lt;input type='text'&gt; 进行显示,并在用户尝试打开日期选择器时隐藏&lt;input type='date'&gt;(以编程方式打开本机日期选择器可能并不容易),并放置 JavaScript从日期选择器到输入类型文本的日期

2) 只需使用带有可自定义日期选择器的库,例如 Angular Material DatePicker 和 setLocale 方法

【讨论】:

  • 感谢您的回复@Mendy。我将尝试另一个第三方日期选择器。
  • Angular 材料以外的 Datepicker 是他们任何可以轻松与 集成的第三方模块。因为有些日期选择器很难用 ngModel 应用
  • 你可以试试ng-bootstraps datepickerngx-bootstraps datepicker,它们都使用输入标签,所以ngModel应该相当容易使用
  • 是的,但是它们的输出模型与正常的日期输入不同。 Model: { "year": 2019, "month": 1, "day": 31 },所以我得另写一个方法来处理。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-17
  • 2019-02-23
  • 1970-01-01
  • 2012-11-10
  • 2020-07-10
  • 1970-01-01
相关资源
最近更新 更多