Asp.net MVC集验证日期格式在Chrome失败 [英] Asp.net MVC set validation date format fails on Chrome
问题描述
我在与设置验证日期格式的Chrome在asp.net mvc的,对于其他浏览器如IE浏览器的问题,Firefox的正常工作。
I'm having problems with setting validations date format Chrome in asp.net mvc, for other browsers like IE,Firefox works correctly .
我已经在我的模型就像下一个code定义的日期:
I have defined dates in my model like next code:
[Required]
[Display(Name = "Data fi publicació")]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MM/yyyy}")]
public DateTime PublishingEndDate { get; set; }
在我的观点:
@Html.TextBoxFor(model => model.PublishingEndDate)
@Html.ValidationMessageFor(model => model.PublishingEndDate)
问题似乎 @ Html.ValidationMessageFor
,验证与格式的日期 MM / DD / YYYY
,但我想要的是与欧洲的格式为: DD / MM / YYYY
验证。我怎样才能改变默认区域性验证格式日期 DD / MM / YYYY
?
The problem It seems that @Html.ValidationMessageFor
, validates the date with format MM/dd/yyyy
, but what I want is to validate with european format dd/MM/yyyy
. How can I change default culture validations format date to dd/MM/yyyy
?
感谢您的帮助。
推荐答案
最后,我发现这个问题只影响浏览器,IE浏览器,Firexfox它完美的作品,这似乎是一个镀铬的错误,我发现的http://forums.asp.net/t/1729179.aspx/1
Finally I discover the problem only affects Chrome, with IE, Firexfox it works perfectly, it seems is a chrome bug, I found the solution in http://forums.asp.net/t/1729179.aspx/1
的jQuery的验证方法必须覆盖使用以下code:
The validator method of jquery has to be override using the following code:
$(document).ready(function () {
$('.calendarPicker').datepicker({ dateFormat: "dd/mm/yy" });
$.validator.addMethod('date',
function (value, element, params) {
if (this.optional(element)) {
return true;
}
var ok = true;
try {
$.datepicker.parseDate('dd/mm/yy', value);
}
catch (err) {
ok = false;
}
return ok;
});
});
这篇关于Asp.net MVC集验证日期格式在Chrome失败的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!