Date 日期格式yyyy MM dd上的剑道UI日期选择器警告

Date 日期格式yyyy MM dd上的剑道UI日期选择器警告,date,kendo-ui,datepicker,format,Date,Kendo Ui,Datepicker,Format,我的页面上有一个关于无效日期格式的警告,如下所示。该警告由Kendo UI DatePicker组件生成。我在网上找不到解决方案,我的应用程序已本地化。如何解决这个问题 <p>@(Html.Kendo().DatePicker().Name("periodoDocumento").Value(DateTime.Now))</p> 我必须根据客户的需要使用日-月-年格式。添加格式属性: @(Html.Kendo().DatePicker().Format("dd/MM/y

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

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

我必须根据客户的需要使用日-月-年格式。添加格式属性:

@(Html.Kendo().DatePicker().Format("dd/MM/yyyy").Name("periodoDocumento").Value(DateTime.Now))
我找到了解决方案:

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

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

将字段的类型设置为
text
可防止浏览器和jquery验证程序将其视为日期。这比指定无效的输入类型格式(如
空字符串
)更简洁

然而,这仍然是一个有点黑客-它只是抑制了浏览器和/或验证工具对日期字段所做的验证。更好的解决方案(适用于长期修复)是确保填充这些日期字段的日期字符串符合中的规定,例如,
2017-02-10

还可以参考这个较新的问题,特别是关于Chrome现在需要在HTML5日期字段上设置正确格式的问题

只需添加这个
.HtmlAttributes(new{type=“text”})

由于日期是DMY,因此错误仍然存在,并且使用.format格式的DMY进行试听。但是没有成功。错误只是在Chrome上吗?是的,仅在chrome中,但我没有使用canary,我使用的是chrome,43.0.2357.130版。这并不重要,但我的设置是@(Html.Kendo().DatePickerFor(model=>model.MyDate).Format(“dd/MM/yyyy”)我不使用名称或值属性并在控制器中填充初始模型值。可能需要检查Chrome开发工具以了解发生了什么。这对我来说很有效。我猜Chrome使用的是
type=“date”
并尝试使用自己的日期选择器,该选择器会生成警告,因为它不是chrome支持的有效日期格式,即使Kendo正确处理了它。这为我解决了这个问题。谢谢。
@(Html.Kendo().DatePicker().Name("periodoDocumento").Value(DateTime.Now).HtmlAttributes(new { @type = "" }))
@(Html.Kendo().DatePicker()
    .Name("DateFieldName")
    .Value(Model.DateFieldName)
    .HtmlAttributes(new { @type=  "text"})
    )