MVC 日期时间验证 - 英国日期格式 [英] MVC DateTime validation - UK Date format
问题描述
我有一个带有两个日期字段的简单视图,其中添加了 ValidationMessageFor 控件以进行不显眼的 JavaScript 验证.
I have a simple view with two date fields with ValidationMessageFor controls added for the unobtrusive JavaScript validation.
我的问题是我一直被告知我的日期无效,但格式正确 (dd/MM/yyyy)
My issue is I keep getting told my date is invalid, when it is in correct format (dd/MM/yyyy)
我已将 <globalizationculture="en-GB" uiCulture="en-GB"/>
添加到我的 web.config,并且还包含 [DisplayFormat(DataFormatString ="{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
在每个 DateTime 属性上,但它仍然不接受英国格式日期.
I have added <globalization culture="en-GB" uiCulture="en-GB"/>
to my web.config, and also included [DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
on each DateTime property, yet it still won't accept UK format dates.
这里有什么明显我遗漏的地方吗?
Is there anything obvious I am missing here?
推荐答案
其实你只需要重载不显眼的 JavaScript 日期验证方法
Actually you just need to overload unobtrusive JavaScript validation method for date
jQuery(function ($) {
$.validator.addMethod('date',
function (value, element) {
if (this.optional(element)) {
return true;
}
var ok = true;
try {
$.datepicker.parseDate('dd/mm/yy', value);
}
catch (err) {
ok = false;
}
return ok;
});
});
这篇关于MVC 日期时间验证 - 英国日期格式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!