JQuery验证和MVC 3.如何更改日期格式

use*_*723 5 validation asp.net-mvc-3

我是MVC 3和JQuery Validation的新手,所以我能得到的任何帮助都将非常感激.

我的开发平台是.NET MVC 3网站.我正在使用内置的不显眼的javascript进行表单验证.有没有办法将日期更改为有效日期的其他格式.据我所知,有效格式为dd/mm/yy.是否可以将有效日期格式更改为"2012年4月3日"?

我的视图模型有一个字段

[Required]
DateTime OrderDate { get; set; }
Run Code Online (Sandbox Code Playgroud)

我知道MVC 3正在使用jquery验证,所以我认为解决方案需要更改为jquery validate,也不确定如何将其连接到MVC,因此它的工作方式与使用数据的所有其他内置数据验证相同注释.

谢谢.

Jeo*_*uan 8

当您对日期使用客户端验证时,您还必须覆盖日期的jQuery验证.

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

您必须在HTML头中引用Globalize库和相应的文化.从https://github.com/jquery/globalize下载.


Jes*_*sse 1

如果您想更改订单日期的格式,您可以使用DisplayFormat注释来实现:

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

其中DataFormatString是您想要的日期时间格式。