一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

javaScript检测日期时间格式是否正确代码

时间:2014-08-26 编辑:简简单单 来源:一聚教程网

在WEB开发时,经常会与日期时间打交道,有时候我们需要用户提供日期和时间数据,为了确保顺利提交,我们需要对用户输入的日期时间格式进行验证,不正确的话则提示用户检查并重新输入,以下代码将分别判断日期格式、日期时间格式是否正确。
第一种:仅判断日期格式是否正确,不带时间:

 代码如下 复制代码

第二种,判断日期+时间格式是否正确:
 

 代码如下 复制代码

第三种,判断日期是否有效


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]);
}

第四种,判断日期格式是否有效

 代码如下 复制代码

function toDateFromString( strDate )
{
if (strDate.length != 8) {
return null ;
}
var dtDate = null ;
var nYear = parseInt( strDate.substring( 0, 4 ), 10 ) ;
var nMonth = parseInt( strDate.substring( 4, 6 ), 10 ) ;
var nDay = parseInt( strDate.substring( 6, 8 ), 10 ) ;
if( isNaN( nYear ) == true || isNaN( nMonth ) == true || isNaN( nDay ) == true )
{
return null ;
}
dtDate = new Date( nYear, nMonth - 1, nDay ) ;
if( nYear != dtDate.getFullYear() || ( nMonth - 1 ) != dtDate.getMonth() || nDay != dtDate.getDate() )
{
return null ;
}
return dtDate ;
}
YYYYMMDD的格式

热门栏目