检查格式2003-9-9 23:11:23
<input type="text" value="2003-9-9 23:11:23" id="inputtime">
<input type="button" onclick="changev()" value="click">
<script>
function changev(){
var aaa=inputtime.value
ttt=aaa.match(/\d{4}-\d{1,2}-\d{1,2} \d{1,2}:\d{1,2}:\d{1,2}/)
if(ttt==null) alert("error");else alert("ok");
}
</script>
1 短时间,形如 (13:04:06)
function isTime(str){
var a = str.match(/^(\d{1,2})(:)?(\d{1,2})\2(\d{1,2})$/);
if (a == null) {alert('输入的参数不是时间格式'); return false;}
if (a[1]>24 || a[3]>60 || a[4]>60){
alert("时间格式不对");
return false
}
return true;
}
2. 短日期,形如 (2008-07-22)
function strDateTime(str){
var r = str.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/);
if(r==null)return false;
var d= new Date(r[1], r[3]-1, r[4]);
return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]);
}
3 长时间,形如 (2008-07-22 13:04:06)
function strDateTime(str){
var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;
var r = str.match(reg);
if(r==null)return false;
var d= new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]);
return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()==r[7]);
}
/**
判断时间大小
sdate1: 开始时间
edate2: 结束时间
return: true/false
**/
function checkDate(sdate1,edate2){
if(sdate1!=""&&edate2!="")
{ //输入不为空时;
// 对字符串进行处理
// 以 - / 或 空格 为分隔符, 将日期字符串分割为数组
var date1 = sdate1.split("-");
var date2 = edate2.split("-");
// 创建 Date 对象
var myDate1 = new Date(date1[0],date1[1],date1[2]);
var myDate2 = new Date(date2[0],date2[1],date2[2]);
// 对日起进行比较
if (myDate1 <= myDate2)
{
return true;
}else
{
alert ("提示: 开始时间不能大于结束时间!");
return false;
}
}
else
{
return true;
}
}
/**
判断日期格式 2000-01-01
strDate:检测的日期格式
return: true/false
**/
function isDate(strDate){
var strSeparator = "-"; //日期分隔符
var strDateArray;
var intYear;
var intMonth;
var intDay;
var boolLeapYear;
//var strDate=form1.a.value //表单中的日期值
strDateArray = strDate.split(strSeparator);
if(strDateArray.length!=3) { alert('提示: 日期格式错误! \r\n 请依【YYYY-MM-DD】格式输入!'); return false; }
intYear = parseInt(strDateArray[0],10);
intMonth = parseInt(strDateArray[1],10);
intDay = parseInt(strDateArray[2],10);
if(isNaN(intYear)||isNaN(intMonth)||isNaN(intDay)) { alert('提示: 日期格式错误! \r\n 请依【YYYY-MM-DD】格式输入!'); return false; }
if(intMonth>12||intMonth<1) { alert('提示: 日期格式错误! \r\n 请依【YYYY-MM-DD】格式输入!'); return false; }
if((intMonth==1||intMonth==3||intMonth==5||intMonth==7||intMonth==8||intMonth==10||intMonth==12)&&(intDay>31||intDay<1)) { alert('提示: 日期格式错误! \r\n 请依【YYYY-MM-DD】格式输入!'); return false; }
if((intMonth==4||intMonth==6||intMonth==9||intMonth==11)&&(intDay>30||intDay<1)) { alert('提示: 日期格式错误! \r\n 请依【YYYY-MM-DD】格式输入!'); return false; }
if(intMonth==2){
if(intDay<1) { alert('提示: 日期格式错误! \r\n 请依【YYYY-MM-DD】格式输入!'); return false; }
boolLeapYear = false;
if((intYear%4==0 && intYear %100!=0)||(intYear %400==0))
{
boolLeapYear=true;
}
if(boolLeapYear){
if(intDay>29) { alert('提示: 日期格式错误! \r\n 请依【YYYY-MM-DD】格式输入!'); return false; }
}
else{
if(intDay>28) { alert('提示: 日期格式错误! \r\n 请依【YYYY-MM-DD】格式输入!'); return false; }
}
}
return true;
}
附注:
如果是24小时制的(23:59的格式):re = /^([01][0-9]|2[0-3])\:[0-5][0-9]$/
如果还带秒数的(23:59:59的格式):re = /^([01][0-9]|2[0-3])\:[0-5][0-9]\:[0-5][0-9]$/
如果前后有空格的也要匹配的:re = /^\s*([01][0-9]|2[0-3])\:[0-5][0-9]\:[0-5][0-9]\s*$/
如果24小时制的,要秒数不要秒数都可以的,并且前后还可以加空格的:
re = /^\s*([01][0-9]|2[0-3])\:[0-5][0-9](\:[0-5][0-9]){0,1}\s*$/ 或者:
re = /^\s*([01][0-9]|2[0-3])\:[0-5][0-9](\:[0-5][0-9])?\s*$/
判断全格式时间的正确性:
如:2012-03-04 23:09:00
^[0-9]{4}-[0-9]{2}-[0-9]{2}\s+([01][0-9]|2[0-3])\:[0-5][0-9]\:[0-5][0-9]$
转自:http://blog.csdn.net/itxiaohei323/article/details/7916598
分享到:
相关推荐
js验证日期格式,比较日期大小,判断两日期年月是否相同借鉴.pdf
有用的时间日期格式判断,满足不同的需求,YYYY-MM-DD, 时间格式检测:23:59:59的格式等
http://www.cnblogs.com/GuominQiu 代码如下: //————————————————————————— //判断日期格式是否正确 //返回值是错误信息, 无错误信息即表示合法日期字符串 function isDateString(strDate...
用js来判断日期的格式是否正确,用日期的正则表达式来与用户输入的数据进行比较
js 判断日期大小
Date.prototype.Format 日期格式化 Date.prototype.DateAdd 日期计算 Date.prototype.DateDiff 比较日期差 Date.prototype.toString 日期转字符串 Date.prototype.toArray 日期分割为数组 Date.prototype.DatePart ...
判断所传入的字符串是不是时间类型,日期类型,如果是日期类型可以转换成Date类型
javascript判断2个日期之间是否有周末
Date.prototype.Format 日期格式化 Date.prototype.DateAdd 日期计算 Date.prototype.DateDiff 比较日期差 Date.prototype.toString 日期转字符串 Date.prototype.toArray 日期分割为数组 Date.prototype.DatePart ...
//功能介绍:检查是否为日期时间 function CheckDateTime(str){ var reg = /^(\d+)-(\d{1,2})-(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/; var r = str.match(reg); if(r==null)return false; r[2]=r[2]-1; var d= ...
本文实例分析了javascript输入日期大于等于当前日期验证代码,分享给大家供大家参考,具体如下: [removed] $(function () { var d = new Date(); var strDate = getDateStr(d); $("#beginTime").val(strDate)...
因为要做一个日历控件,遇到国家法定节假日,怎么实现此功能呢?其实实现代码很简单的。下面小编给大家分享js判断节假日实例代码,需要的朋友参考下吧
日期格式化/日期时间差等日期相关的工具类:日期格式化,格式转换,时间差等
可以验证 ','、'-'、'/'不同格式的日期 还可以加上 时间 2010-02-2 12:02:2 进行有效验证 使用正则表达式
JavaScript正则表达式验证yyyy-mm-dd格式的日期
一个正则表达式验证格式的方法 你一个可以调用的demo valid(str,tostr) str:字符串 tostr:格式 yy-mm-dd 支持.,/,-三种格式。
jquery输入格式判断:为空、日期格式、整数、数字格式判断
给一个8位整数,如20380908编程判断这个数字做为日期是不是合法的。注意闰年等。闰年的判断式:能被4整除且不能被100整除的为闰年。(如2004年就是闰年,1901年不是闰年) ②能被400整除的是闰年。(如2000年...