微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将值设置为@ Html.EditorFor并保留其datepicker函数

如何解决将值设置为@ Html.EditorFor并保留其datepicker函数

我遇到问题了。
现在将尝试逐步解释所有内容

我的任务
我正在为自己创建一个非常简单的应用来组织工作任务。

问题
我需要一种到期日的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);
        }

在主页上看起来不错,并带有任务列表(将不需要的内容弄糊涂了):

MinPage

但是当我打开记录时-不显示日期:

Record

我尝试过的事情
浏览thisthis,尝试将[DataType(DataType.Date)]替换为[DataType(DataType.DateTime)]。它可以在现场显示日期,但选择器消失了。

感谢您对我的问题或指南的协助,以了解和使用自定义选择器。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。