JQuery Validation и MVC 3. Как изменить формат даты - PullRequest
5 голосов
/ 20 марта 2012

Я новичок в MVC 3 и JQuery Validation, поэтому любая помощь, которую я могу получить, будет очень благодарна.

Моей платформой devleopment является веб-сайт .NET MVC 3.Я использую встроенный ненавязчивый JavaScript для проверки формы.Есть ли способ изменить дату на другой формат для действительной даты.Насколько я могу судить, действительный формат - дд / мм / гг.Можно ли изменить допустимый формат даты на что-то вроде «3 апреля 2012 года»?

В моей модели представления есть поле

[Required]
DateTime OrderDate { get; set; }

Я знаю, что MVC 3 использует проверку jquery впоэтому я думаю, что решение потребует изменения проверки jquery, а также не уверен, как подключить его к MVC, чтобы оно работало так же, как и все другие встроенные проверки данных с использованием аннотаций данных.

Спасибо.

Ответы [ 2 ]

8 голосов
/ 27 апреля 2012

Когда вы используете проверку даты на стороне клиента, вы также должны переопределить проверку 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.

1 голос
/ 20 марта 2012

Если вы хотите изменить формат даты заказа, вы должны сделать это с помощью аннотации DisplayFormat :

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

Где DataFormatString - желаемый формат даты и времени.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...