Kendo UI Editor在Chrome 56.0.2924中为日期空白

时间:2017-03-09 21:59:50

标签: asp.net-mvc google-chrome razor kendo-ui

我正在使用剑道与asp.net mvc

@Html.EditorFor(model => model.shipmentDate)

它在Chrome v56中显示空白值,而Chrome v49.0.2623则不是这种情况。

这是ViewModel:

[Display(Name = "Shipment Date")]
[Required(ErrorMessage = "Please select a shipment date")]
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
public DateTime shipmentDate { get; set; }

另外,使用Chrome的开发者工具检查此元素我有:

<input data-val="true" data-val-date="The field Shipment Date must be a date." data-val-required="Please select a shipment date" id="shipmentDate" name="shipmentDate" type="text" value="03/09/17" data-role="datepicker" class="k-input" role="combobox" aria-expanded="false" aria-owns="shipmentDate_dateview" style="width: 100%;">

如您所见,该值从Controller传递,但不显示日期。

此版本的Chrome应该更改哪些内容?

1 个答案:

答案 0 :(得分:0)

这是Telerik的一个已知问题:http://www.telerik.com/forums/kendo-ui-date-blank-in-chrome-56-0-2924

您可以将Kendo.Mvc.dll更新为最新版本,例如剑道2017.2.621

或添加HtmlAttributes type =“text”作为解决方法:

@(Html.Kendo().DatePicker().Name("Date")
     .Value(Model.date)
     .HtmlAttributes(new { type = "text" })
)

或将@ Html.EditorFor更改为@ Html.Kendo()。DatePicker(),并使用此版本的chrome兼容格式(“yyyy-MM-dd”):

@(Html.Kendo().DatePicker().Name("Date")
     .Value(Model.date)
     .Format("yyyy-MM-dd")
)