我在日期验证方面遇到问题。在我的视图中,我有一个 jQuery 日期选择器 - 我更改了格式yy/mm/dd
to mm/dd/yy
现在我收到客户端验证错误。例如,
The value '02/25/2014' is not valid for Date of Birth.
JavaScript:
$('#DateOfBirth').datepicker({
changeMonth: true,
changeYear: true,
dateFormat: "mm/dd/yy",
yearRange: "-90:-5"
});
视图模型:
[Required]
[Display(Name = "Date of Birth")]
public DateTime? DateOfBirth { get; set; }
风景:
@Html.TextBoxFor(m=> m.DateOfBirth, "{0:MM/dd/yyyy}", new { @class = "datepicker" })
对此有什么想法吗?
Thanks.
UPDATE
我忽略了一些事情。验证实际上在服务器端失败。所以这与 jQuery 无关。这ModelState.IsValid == false
for me.
我在这里找到了解决方案:ASP.NET MVC3 - 日期时间格式 https://stackoverflow.com/questions/7835614/asp-net-mvc3-datetime-format这与全球化有关。
我的区域设置是en-CA
and
System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern
gives "dd/MM/yyyy"
.
So in Web.config
under <system.web>
包括我
<globalization uiCulture="en-US" culture="en-US"/>
所以日期时间格式现在对我有用。
P.S.
传递日期而不用担心特定文化的安全方法是使用 ISO 8601 格式 -yyyy-MM-dd
(or yyyy/MM/dd
这也有效)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)