//+---------------------------------------------------
//| 日期合法性验证
//| 格式为:YYYY-MM-DD或YYYY/MM/DD
//+---------------------------------------------------
function IsValidDate(DateStr)
{
var sDate=DateStr.replace(/(^\s+|\s+$)/g,''); //去两边空格;
if(sDate=='') return true;
//如果格式满足YYYY-(/)MM-(/)DD或YYYY-(/)M-(/)DD或YYYY-(/)M-(/)D或YYYY-(/)MM-(/)D就替换为''
//数据库中,合法日期可以是:YYYY-MM/DD(2003-3/21),数据库会自动转换为YYYY-MM-DD格式
var s = sDate.replace(/[\d]{ 4,4 }[\-/]{ 1 }[\d]{ 1,2 }[\-/]{ 1 }[\d]{ 1,2 }/g,'');
if (s=='') //说明格式满足YYYY-MM-DD或YYYY-M-DD或YYYY-M-D或YYYY-MM-D
{
var t=new Date(sDate.replace(/\-/g,'/'));
var ar = sDate.split(/[-/:]/);
if(ar[0] != t.getYear() || ar[1] != t.getMonth()+1 || ar[2] != t.getDate())
{
//alert('错误的日期格式!格式为:YYYY-MM-DD或YYYY/MM/DD。注意闰年。');
return false;
}
}
else
{
//alert('错误的日期格式!格式为:YYYY-MM-DD或YYYY/MM/DD。注意闰年。');
return false;
}
return true;
}
相关文章
- 判断日期类型是否为YYYY-MM-DD格式的类型
- 解决年份为1986~1991时,使用注解@JsonFormat(pattern = “yyyy-MM-dd“, timezone = “GMT+8“)仍然比实际日期少一天
- js获取当前日期(yyyy-mm-dd格式)
- js中将数字格式的日期化为yyyy-MM-dd样式
- 【JS】日期Date如何格式化为年月日yyyy-MM-dd hh:mm:ss
- 使用【】反序列化yyyy-MM-dd HH:mm:ss格式日期失败
- 字符串 检测日期格式是否为yyyy-MM-dd的校验详讲
- js获取当前日期,格式为YYYY-MM-DD
- 【原创】Js:日期处理(日期格式必须【yyyy-mm-dd】才能转成long的毫秒!其他的不是【年-月-日】的格式,结果会是【NaN】)
- js 获取当前日期时间3种格式化方法 yyyy-mm-dd hh:MM:ss