//短时间(形如: 13:04:06)
//更具弹性的正则表达式:/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/
function isShortTime(elem){
var pattern=/^([0-9]{1,2})(:)([0-9]{1,2})(:)([0-9]{1,2})$/;
var temp=elem.match(pattern);
if(temp==null)
return false;
if(temp[1]>24)
return false;
if(temp[3]>60)
return false;
if(temp[5]>60)
return false;
return true;
}
//短日期(形如: 2003-12-18)
//更具弹性的正则表达式:/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/
function isShortDate(elem){
var pattern=/^(\d{4})(-)(\d{2})(-)(\d{2})$/;
var temp=elem.match(pattern);
if(temp==null){
return false;
}
//
var d=new Date(temp[1]+"/"+temp[3]+"/"+temp[5]);
return d.getFullYear()==temp[1]&&
(d.getMonth()+1)==temp[3]&&
d.getDate()==temp[5];
}
//长时间,形如(2003-12-18 13:04:06)
//更具弹性的正则表达示/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/
function isTime(elem){
var pattern=/^(\d{4})(-)(\d{2})(-)(\d{2})(\s+)(\d{2})(:)(\d{2})(:)(\d{2})$/;
var temp=elem.match(pattern);
if(temp==null) return false;
//date(year,month,date, hour,minutes,seconds)
var d=new Date(temp[1],temp[3]-1,temp[5],temp[7],temp[9],temp[11]);
return d.getFullYear()==temp[1]&&
(d.getMonth()+1)==temp[3]&&
d.getDate()==temp[5]&&
d.getHours()==temp[7]&&
d.getMinutes()==temp[9]&&
d.getSeconds()==temp[11];
}
//只有年月 形如: 2003-12
function isDate(elem){
var pattern=/^([0-9]{4}|[0-9]{2})-([0-9]{1,2})$/;
var temp=elem.match(pattern);
if(temp==null) return false;
//Date(year,month)
var d=new Date(temp[1],temp[2]-1);
return d.getYear()==temp[1]&&(d.getMonth()+1)==temp[2];
}
//只有小时与分 形如: 04:47
//timePat=/^([1-9]|1[0-2]):[0-5]d$/;
function isTM(elem){
var pattern=/^(\d{1,2})(-|\/|:)(\d{1,2})$/;
var temp=elem.match(pattern);
if(temp==null) return false;
var hour=parseInt(temp[1]);
var mint=parseInt(temp[3]);
if(hour>24) return false;
if(hour<0) return false;
if(mint>60) return false;
if(mint<0) return false; return true;
}
//判断leapYear (格式2003-12-18) (没有测试)
function isLeapYear(elem){
//选用上面的函数检验elem的有效性
if(isShortDate(elem)==false){
//输入的时间不格式不正确
return false;
}
var temp=elem.split("-");
var year=parseInt(temp[0]);
if((year%100)==0){
return (year%400)==0;
}else{
return (year%4)==0;
}
}
//更具弹性的正则表达式:/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/
function isShortTime(elem){
var pattern=/^([0-9]{1,2})(:)([0-9]{1,2})(:)([0-9]{1,2})$/;
var temp=elem.match(pattern);
if(temp==null)
return false;
if(temp[1]>24)
return false;
if(temp[3]>60)
return false;
if(temp[5]>60)
return false;
return true;
}
//短日期(形如: 2003-12-18)
//更具弹性的正则表达式:/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/
function isShortDate(elem){
var pattern=/^(\d{4})(-)(\d{2})(-)(\d{2})$/;
var temp=elem.match(pattern);
if(temp==null){
return false;
}
//
var d=new Date(temp[1]+"/"+temp[3]+"/"+temp[5]);
return d.getFullYear()==temp[1]&&
(d.getMonth()+1)==temp[3]&&
d.getDate()==temp[5];
}
//长时间,形如(2003-12-18 13:04:06)
//更具弹性的正则表达示/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/
function isTime(elem){
var pattern=/^(\d{4})(-)(\d{2})(-)(\d{2})(\s+)(\d{2})(:)(\d{2})(:)(\d{2})$/;
var temp=elem.match(pattern);
if(temp==null) return false;
//date(year,month,date, hour,minutes,seconds)
var d=new Date(temp[1],temp[3]-1,temp[5],temp[7],temp[9],temp[11]);
return d.getFullYear()==temp[1]&&
(d.getMonth()+1)==temp[3]&&
d.getDate()==temp[5]&&
d.getHours()==temp[7]&&
d.getMinutes()==temp[9]&&
d.getSeconds()==temp[11];
}
//只有年月 形如: 2003-12
function isDate(elem){
var pattern=/^([0-9]{4}|[0-9]{2})-([0-9]{1,2})$/;
var temp=elem.match(pattern);
if(temp==null) return false;
//Date(year,month)
var d=new Date(temp[1],temp[2]-1);
return d.getYear()==temp[1]&&(d.getMonth()+1)==temp[2];
}
//只有小时与分 形如: 04:47
//timePat=/^([1-9]|1[0-2]):[0-5]d$/;
function isTM(elem){
var pattern=/^(\d{1,2})(-|\/|:)(\d{1,2})$/;
var temp=elem.match(pattern);
if(temp==null) return false;
var hour=parseInt(temp[1]);
var mint=parseInt(temp[3]);
if(hour>24) return false;
if(hour<0) return false;
if(mint>60) return false;
if(mint<0) return false; return true;
}
//判断leapYear (格式2003-12-18) (没有测试)
function isLeapYear(elem){
//选用上面的函数检验elem的有效性
if(isShortDate(elem)==false){
//输入的时间不格式不正确
return false;
}
var temp=elem.split("-");
var year=parseInt(temp[0]);
if((year%100)==0){
return (year%400)==0;
}else{
return (year%4)==0;
}
}
re=/^(1\d|2[0-4]):[0-5]\d$/