问题描述
我遇到问题了。
现在将尝试逐步解释所有内容。
我的任务
我正在为自己创建一个非常简单的应用来组织工作任务。
问题
我需要一种到期日的DatePicker。我已经在互联网上搜索了一种解决方案,但最终使用@Html.EditorFor
来解决这个问题,因为我不熟悉JQuery和其他提供自定义选择器的东西。通常,它对我来说很好用,除了一件事-当模型具有现有日期时,此字段不会显示它。
正如我发现的那样,@Html.EditorFor
在不同的浏览器中具有不同的行为,因此目标浏览器是Chrome。
代码
型号:
[required]
[display(Name = "Due Date")]
[DataType(DataType.Date)]
[displayFormat(DataFormatString = "{0:dd'/'MM'/'yyyy}",ApplyFormatInEditMode = true)]
public DateTime DueDate { get; set; }
查看:
<div class="form-group">
@Html.LabelFor(e => e.DueDate)<p/>
@if (Model == null)
{
@Html.EditorFor(e => e.DueDate,new { @class = "form-control",@Value = DateTime.Now })
}
else
{
@Html.EditorFor(e => e.DueDate,@Value = Model.DueDate })
}
@Html.ValidationMessageFor(e => e.DueDate,null,new { @class = "text-danger" })
</div>
控制器:
public ActionResult Record(int? id)
{
var rec = _context.TaskEntries.FirstOrDefault(r => r.Id == id);
return rec == null ? View() : View(rec);
}
在主页上看起来不错,并带有任务列表(将不需要的内容弄糊涂了):
但是当我打开记录时-不显示日期:
我尝试过的事情
浏览this和this,尝试将[DataType(DataType.Date)]
替换为[DataType(DataType.DateTime)]
。它可以在现场显示日期,但选择器消失了。
感谢您对我的问题或指南的协助,以了解和使用自定义选择器。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)