2012-03-19 67 views
5

我是MVC 3和JQuery驗證的新手,所以我可以在這裏得到的任何幫助將非常感謝。JQuery驗證和MVC 3.如何更改日期格式

我的開發平臺是.NET MVC 3網站。我使用內置的不顯眼的JavaScript進行表單驗證。有沒有辦法將日期更改爲有效日期的不同格式。據我所知,有效的格式是dd/mm/yy。是否有可能將有效的日期格式更改爲「2012年4月3日」?

我的視圖模型有一個字段

[Required] 
DateTime OrderDate { get; set; } 

我知道MVC 3使用引擎蓋下jQuery驗證所以我想該解決方案將需要改變JQuery驗證,也不能確定如何掛鉤它取決於MVC,因此它與所有使用數據註釋的內置數據驗證一樣工作。

謝謝。

回答

1

如果你想改變訂單日期的格式,你將與DisplayFormat註釋這樣做:

[DisplayName("Order Date")] 
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:MM/dd/yy}")] 
[Required] 
DateTime OrderDate { get; set; } 

DataFormatString是你想要的日期時間格式。

+0

謝謝,但它不起作用。我上面列出的日期格式是「2012年3月18日」,所以我稍微調整了我的格式的建議,但驗證日期仍然失敗。 [DisplayFormat(ApplyFormatInEditMode = true,DataFormatString =「{0:MMM dd,yyyy}」)] – user1279723 2012-03-20 19:50:57

8

當您對日期使用客戶端驗證時,還必須覆蓋日期的jQuery驗證。

$.validator.methods.date = function (value, element) { 
    return this.optional(element) || Globalize.parseDate(value, "MMM dd, yyyy") !== null; 
} 

您必須引用Globalize庫和HTML頭中的相應文化。從https://github.com/jquery/globalize下載。