Kendo UI日期选择器警告日期格式yyyy-MM-dd



我的页面上有一条关于无效日期格式的警告,如下所示。该警告由Kendo UI DatePicker组件生成。我在网上找不到解决方案,我的应用程序已本地化。如何解决这个问题。

<p>@(Html.Kendo().DatePicker().Name("periodoDocumento").Value(DateTime.Now))</p>

谷歌浏览器错误:

The specified value '06/07/2015' does not conform to the required format, 'yyyy-MM-dd'.

我必须使用日-月-年格式来满足我的客户需求

我找到了解决方案:

@(Html.Kendo().DatePicker().Name("periodoDocumento").Value(DateTime.Now).HtmlAttributes(new { @type = "" }))

因此jquery将停止将此字段解析为默认格式的日期。

将字段的类型设置为text会阻止浏览器和jQuery Validator将其视为日期。这比指定无效的输入类型格式(如empty string(要干净一些。

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

然而,这仍然有点像黑客——它只是抑制了浏览器和/或验证工具对日期字段进行的验证。更好的解决方案(适用于长期修复(是确保填充这些日期字段的日期字符串符合ISO 8601中规定的HTML5日期字段生存标准,例如2017-02-10

还请参考这个新问题,特别是关于Chrome现在需要在HTML5日期字段上进行正确格式化的问题。

Kendo UI日期选择器与Chrome 56 不兼容

添加格式属性:

@(Html.Kendo().DatePicker().Format("dd/MM/yyyy").Name("periodoDocumento").Value(DateTime.Now))

http://docs.telerik.com/kendo-ui/api/javascript/ui/datepicker#configuration-格式化

只需添加.HtmlAttributes(new { type = "text" })

最新更新