MVC3 + Datepicker +英国日期

Dudes,一直在努力解决这个问题。 我一直在环顾四周,一直在摆弄,但我不能让它工作!

对于我的DOB,我希望以dd / mm / yyyy接受日期..但是它只接受mm / dd / yyyy。 我应该在哪里修复?

我从Jquery Datepicker 1和Jquery Datepicker 2获得了灵感。

在我的模型中

[DataType(DataType.Date)] [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)] [Display(Name = "Date of Birth")] public DateTime DOB { get; set; } 

在我看来,非常直截了当

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

有一个编辑模板,每当使用日期时调用该模板。

 @model DateTime? @Html.TextBox("", Model != null ? Model.Value.ToString("dd/mm/yyyy") : "", new { @class = "date" }) 

写了另一个编辑连接,引用了Jquery

 $(document).ready(function () { $('.date').datepicker({ dateFormat: "dd/mm/yy" }); }); 

任何帮助表示赞赏!

我应该在哪里修复?

在您的编辑器模板中:

 @Html.TextBox("", ViewData.TemplateInfo.FormattedModelValue, new { @class = "date" }) 

那是用于以正确的格式显示日期。

为了在POST控制器操作中将值绑定回来,您可以编写一个自定义模型绑定器 ,该绑定器将使用[DisplayFormat]属性使用指定的格式将值解析回有效的DateTime实例。