作者:Less哒哒_288 | 来源:互联网 | 2022-06-27 13:18
很多网站都涉及到输入日期选项,如果客户日期输入错误,可能导入查询不到甚至查询到错误的信息,为了更好的满足用户需求,需要对日期进行校验,下面给大家介绍使用纯javascript如何判断查询日期是否为有效日期,需要的朋友可以参考下
以下内容主要通过js代码给大家介绍,代码比较简单,包含注释,有好的建议欢迎提出。
如下图,当查询条件含有日期时,如“2012-3-4”,查询前校验输入的日期字符串是否为有效的日期
var snapshot_createTime_begin=$(selector+" input[name='createTime_begin']").val().trim();
var snapshot_createTime_end=$(selector +" input[name='createTime_end']").val().trim();
try{
//判断开始时间是否为有效的日期
if(snapshot_createTime_begin!=""&&new Date(snapshot_createTime_begin).getDate()!=snapshot_createTime_begin.match(/-\d{0,2}$/g)[0].replace(/-/g,"")){
throw new Error();
}
//判断结束时间是否为有效的日期
if(snapshot_createTime_end!=""&&new Date(snapshot_createTime_end).getDate()!=snapshot_createTime_end.match(/-\d{0,2}$/g)[0].replace(/-/g,"")){
throw new Error();
}
if(Date.parse(snapshot_createTime_begin)>Date.parse(snapshot_createTime_end)){
//alert("开始日期不应当超过结束日期!");
alert("开始日期不应当超过结束日期!");
return ;
}
$.extend(pageObj,{
createTimeBegin:snapshot_createTime_begin,
createTimeEnd:snapshot_createTime_end,
});
initPagination();
}catch(e){
//alert("请输入有效日期!")
alert("请输入有效日期!");
}
js判断年月日是否一个有效日期
function isdate(intYear,intMonth,intDay){
if(isNaN(intYear)||isNaN(intMonth)||isNaN(intDay)) return false;
if(intMonth>12||intMonth<1) return false;
if ( intDay<1||intDay>31)return false;
if((intMOnth==4||intMOnth==6||intMOnth==9||intMOnth==11)&&(intDay>30)) return false;
if(intMOnth==2){
if(intDay>29) return false;
if((((intYear%100==0)&&(intYear%400!=0))||(intYear%4!=0))&&(intDay>28))return false;
}
return true;
}
以上代码就是对日期的有效性校验,希望对大家有所帮助。