Sve*_*ram 1 entity-framework date input asp.net-core-mvc
我为EF模型创建了一个编辑视图,但日期选择器有问题。每当我尝试编辑`数据集时,编辑视图都不会显示旧的日期值。
这是我的Edit.cshtml代码:
<div class="form-group">
<label asp-for="BestellungsDatum" class="control-label"></label>
<input asp-for="BestellungsDatum" type="date" class="form- control" value="@Model.BestellungsDatum" />
<span asp-validation-for="BestellungsDatum" class="text-danger"></span>
</div>
Run Code Online (Sandbox Code Playgroud)
看起来是这样,但是在此位置必须有旧值:
当我将输入更改为type =“ text”时,会显示该值,但没有日期选择器。对此有任何解决方案?
就像在已接受的答案中添加一个补充:
<input asp-for="BestellungsDatum" type="date" class="form-control" />
Run Code Online (Sandbox Code Playgroud)
asp-format添加到数据模型或 ViewModel,而不是DataFormatString添加到视图,这样您就不必将其添加到使用它的每个视图:
[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
public DateTime BestellungsDatum { get; set; }
Run Code Online (Sandbox Code Playgroud)
小智 6
type="date"如果支持,则生成浏览器的HTML-5 datepicker。规范要求将值格式化为ISO格式(yyyy-MM-dd),然后根据浏览器的区域性显示该值。
添加asp-format来设置值的格式,并删除value属性(Tag Helpers会正确生成value属性以实现正确的2向模型绑定,因此您永远不要自己尝试添加属性)
<input asp-for="BestellungsDatum" type="date" asp-format="{0:yyyy-MM-dd}" class="form-control" />
Run Code Online (Sandbox Code Playgroud)
请注意,HTML-5 datepicker在IE中不受支持,仅在最新版本的FireFox中受支持。如果您想要一个一致的UI,请考虑使用jQuery datepicker。
| 归档时间: |
|
| 查看次数: |
3532 次 |
| 最近记录: |