2012-02-29 201 views
0

Dudes,一直試圖解決這個問題很長時間。我一直在環顧四周,但我只是無法讓它工作!MVC3 +日期選擇器+英國日期

對於我的DOB,我希望以dd/mm/yyyy接受日期..但它只接受mm/dd/yyyy。我應該在哪裏進行修復?

我從Jquery Datepicker 1Jquery 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" }) 

又寫了editorhookup,即裁判的Jquery

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

任何幫助表示讚賞!

回答

1

我應該在哪裏進行修復?

在編輯器中的模板:

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

這是在正確的格式顯示日期。

進行結合的價值早在POST控制器動作,您可以編寫一個custom model binder將使用[DisplayFormat]屬性使用指定的格式解析值回有效DateTime實例。

+0

好的謝謝你的指導!讓我試試看! – aHaH 2012-02-29 17:31:13

+0

謝謝達林,像寶石一樣工作! – aHaH 2012-02-29 18:06:54

相關問題