【发布时间】:2015-11-05 06:18:55
【问题描述】:
我知道这是剑道日期解析的常见问题,但是经过 2 天的努力,我仍然无法解决我的问题。 我有网格,它可以动态地将记录添加到我的模型中的嵌套集合中:
@( Html.Kendo().Grid(Model.GTDGoods)
.Name("GTDGoods")
.ToolBar(toolbar => { toolbar.Create(); })
.Columns(columns =>
{
columns.Bound(p => p.GTD_ID).Hidden()
.ClientTemplate("#= GTD_ID #" +
"<input type='hidden' name='GTDGoods[#= index(data)#].GTD_ID' value='#= GTD_ID #' />");
columns.Bound(p => p.GOOD_NO)
.ClientTemplate("#= GOOD_NO #" +
"<input type='hidden' name='GTDGoods[#= index(data)#].GOOD_NO' value='#= GOOD_NO #'/>");
columns.Bound(p => p.DATE)
.ClientTemplate("#=kendo.toString(kendo.parseDate(DATE), 'dd.MM.yyyy') #" +
"<input type='hidden' name='GTDGoods[#= index(data)#].DATE' value='#= kendo.toString(kendo.parseDate(DATE), 'dd.MM.yyyy') #'/>");
columns.Command(command => { command.Destroy(); });
})
.Editable(editable => editable.Mode(GridEditMode.InCell)
.CreateAt(GridInsertRowPosition.Bottom))
.DataSource(dataSource =>dataSource.Ajax()
.Model(model =>{
model.Id(u => u.ID);
model.Field(u => u.GTD_ID).DefaultValue(Model.ID);
})
.ServerOperation(false)))
我在服务器上收到了集合,一切正常,除了DATE 属性。
我的GTDGood 模型有UIHint:
[UIHint("Date")]
public DateTime DATE { get; set; }
而Date编辑器模板是:
@model DateTime?
<script src="~/scripts/kendo/kendo.culture.ru-ru.js"></script>
<script type="text/javascript">
kendo.culture("ru-RU");
</script>
@(Html.Kendo().DatePickerFor(m => m))
当我在网格中更改DATE 的值时出现问题,错误消息显示"The field DATE must be a date" 和"The specified value "01/01/0001" does not conform to the required format, "yyyy-MM-dd"。即使我以“yyyy-MM-dd”格式输入日期,datepicker texbox 也会显示为空。
此外,我的日期选择器在网格之外也能正常工作,例如。当我像@Html.EditorFor(e=>e.DATE) 一样使用它时。
非常感谢任何帮助。
【问题讨论】:
标签: c# jquery asp.net kendo-ui kendo-asp.net-mvc