首页 > 解决方案 > Kendo DatePicker 在英国与美国格式

问题描述

我们在英国,但有一个美国客户。我们希望 Kendo DatePicker 的日期以美国格式显示,MM-dd-yyy但在这里进行测试,它不会接受任何日期值选择,说明它必须是有效日期。

我已申请.Format("MM-dd-yyyy")显示该值,该值有效。我已经尝试了几件事来让它接受日期选择,如您在此处看到的:

@(Html
        .Kendo()
        .DatePickerFor(model => model.Date)
        .Name("Date")
        //.Format("MM-dd-yyyy")
        //.ParseFormats(new[] { "dd/MM/yyyy", "dd-MM-yyyy", "MM-dd-yyyy" })
        .Culture("en-US")
        .HtmlAttributes(new { style = "width:150px" })
)

我怎样才能让它工作?

标签: c#datepickerkendo-asp.net-mvc

解决方案


终于让这个工作了。

在 JavaScript 中,我们可以指定

kendo.culture("en-US");

但我用来让它工作的关键代码是:

function OnSave(e) {
    e.model.Date = (e.model.Date).toUTCString();
}

即使e.model.Date已经是有效的(英国)日期,toUTCString也可以启用自动转换,Kendo/C# 可以将其转换为模型中可接受的日期。


推荐阅读