Eli*_*m99 2 asp.net-mvc datetimepicker kendo-grid
我有一个带有asp.net mvc语法的Kendo UI Grid.我有一个带有日期时间的列以及用于编辑的编辑器模板.当我点击编辑它显示datetimepicker但我不确定如何保持当前值(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>
Run Code Online (Sandbox Code Playgroud)
编辑模板(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")
)
Run Code Online (Sandbox Code Playgroud)
我相信你的问题是你的editorTemplate试图接受
@model TMS.MVC.TIMS.Models.Invoice.InvoiceGridModel
Run Code Online (Sandbox Code Playgroud)
这不起作用,因为您调用editorTemplate的网格列可能是Type DateTime.由于类型不匹配,因此您始终会在编辑器模板中将null显示为模型的值.试试这个.
@model DateTime?
@(Html.Kendo().DateTimePicker()
.Name("InvoiceDate")
.Value(Model == null ? DateTime.Now : @Model)
.Format("M/d/yyyy h:mm tt")
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6734 次 |
| 最近记录: |