在MVC-4.5网站中的剃刀语法形式中,用户可以输入历史日期,如果他们输入5/6/48,即1948年或1848年,系统将把年份更改为2014年。是否有改变客户端开箱即用验证的方法,所以它需要一个4位数的年份?如果没有,我的选择是编写另一段jquery,将输入与正则表达式进行比较。
答案 0 :(得分:0)
[DisplayFormat(ApplyFormatInEditMode = true,
DataFormatString = "{0:dd/MM/yyyy}")]
//请根据您的文化调整日期和月份,不能从您的问题中得出什么
假设它是一个jquery datepicker,你可以为它指定格式:
$(function(){
$('.datepicker').datepicker({dateFormat: 'MM-dd-yyyy'});
});
答案 1 :(得分:0)
没有提供任何答案来改变客户端日期验证器需要4位数的年份,我编写了以下jquery,它似乎与开箱即用的验证器并排工作 - 可能是因为MVC使用keyUp而我的使用模糊:
$("#BirthDate").blur(function () {
var x = $(this).val();
if (x.length > 0) {
var idx = x.lastIndexOf("/");
var sbs = x.substring(idx + 1, x.length);
if (sbs.length < 4) {
alert("Year must be 4 digits long");
}
}
});