日期格式为yyyy-MM-dd的Kendo UI DatePicker警告

时间:2015-07-06 18:23:01

标签: date kendo-ui datepicker format

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

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

Google Chrome中的错误:

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

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

4 个答案:

答案 0 :(得分:16)

我找到了解决方案:

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

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

答案 1 :(得分:4)

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

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

然而,这仍然是一个黑客 - 它只是抑制了您的浏览器和/或验证工具在日期字段上完成的验证。更好的解决方案(适用于长期修复)是确保填充这些日期字段的日期字符串符合HTML5 date field living standard中拼写的ISO 8601,例如2017-02-10

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

Kendo UI datepicker incompatible with Chrome 56

答案 2 :(得分:2)

添加格式属性:

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

http://docs.telerik.com/kendo-ui/api/javascript/ui/datepicker#configuration-format

答案 3 :(得分:0)

添加此内容 .HtmlAttributes(new { type = "text" })