asp.net-mvc - Kendo UI 网格 DateTimePicker 编辑器模板 - 保值

标签 asp.net-mvc datetimepicker kendo-grid

我有一个使用 asp.net mvc 语法的 Kendo UI Grid。我有一个带有日期时间的列以及一个用于编辑的编辑器模板。当我单击“编辑”时,它会显示日期时间选择器,但我不确定如何保留当前值 (InvoicedDate)(如果已经存在)。有什么想法吗?

编辑:当我选择一个日期时,它也不会将该值拉回到更新操作中。我认为这些问题是相关的。

发票网格:

@(Html.Kendo().Grid<TMS.MVC.TIMS.Models.Invoice.InvoiceGridModel>()
<snip>
 columns.Bound(o => o.InvoicedDate).Width(100).Title("Invoice Date").Format("{0:M/d/yyyy}").EditorTemplateName("Invoice_InvoiceDate");
<snip>

编辑器模板 (Invoice_InvoiceDate.cshtml):

@model TMS.MVC.TIMS.Models.Invoice.InvoiceGridModel

   @(Html.Kendo().DateTimePicker()
                    .Name("InvoiceDate")
                    .Value(Model == null ? DateTime.Now : Model.InvoicedDate)
                    .Format("M/d/yyyy h:mm tt")
   )

最佳答案

我相信你的问题是你的 editorTemplate 正试图接受

@model TMS.MVC.TIMS.Models.Invoice.InvoiceGridModel

这将不起作用,因为您为其调用 editorTemplate 的网格列可能是 DateTime 类型。由于类型不匹配,您总是会在编辑器模板中将 null 显示为模型的值。试试这个。

@model DateTime? 
@(Html.Kendo().DateTimePicker()
                .Name("InvoiceDate")
                .Value(Model == null ? DateTime.Now : @Model)
                .Format("M/d/yyyy h:mm tt")
)

关于asp.net-mvc - Kendo UI 网格 DateTimePicker 编辑器模板 - 保值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14363894/

相关文章:

javascript - 禁用在 jQuery DateTimePicker 中的下一个/上一个操作期间自动更改日期值

jquery - 在 JQuery Bootstrap 模型内的部分 View 中有一个日期时间选择器

javascript - 如何在剑道网格标题列中创建自定义下拉列表?

css - 如何添加页脚模板以 react 剑道网格

asp.net-mvc - MVC4 RC WebApi 参数绑定(bind)

asp.net-mvc - 为什么MvcHandler.BeginProcessRequest()这么慢?

html - Bootstrap 4 DateTimePicker 周一开始一周

c# - 将 Claims 添加到 ApplicationUser 的子类

c# - 缓存局部 View Asp.net MVC 5

kendo-ui - 更改架构以使用数据而不是模型时,Kendo Ui 网格不会更新