我希望我的输入显示为 dd/mm/yyyy,默认情况下如何更改?
[DataType(DataType.Date)]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "dd/MM/yyyy")]
public DateTime Date{ get; set; }
html
<input asp-for="Process.Date" class="form-control" />
我希望我的输入显示为 dd/mm/yyyy,默认情况下如何更改?
[DataType(DataType.Date)]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "dd/MM/yyyy")]
public DateTime Date{ get; set; }
html
<input asp-for="Process.Date" class="form-control" />
我假设您实际上指的是 HTML5 日期输入以及浏览器如何呈现它。您看到的是本地化的,但它是根据客户端计算机上设置的文化进行本地化的。换句话说,您无法从服务器控制它。这实际上是它应该的方式。最终用户决定他们自己的文化偏好。此外,日期输入类型不支持任何日期格式,但 ISO (YYYY-MM-DD)。传递以任何其他方式格式化的日期将被视为空值。
如果您不希望这种行为,您唯一的选择是使用常规文本输入,您可以通过手动指定type
属性来实现:
<input type="text" asp-for="Process.Date" class="form-control" />
但是,当您这样做时,它只是一个常规的文本输入。您将无法获得日期选择器控件、验证等。如果您愿意,您需要依靠第三方 JS 库在客户端重新添加此功能。