Jquery中文网 www.jquerycn.cn
Jquery中文网 >  jQuery  >  jquery 教程  >  正文 javascript 验证日期的函数

javascript 验证日期的函数

发布时间:2013-08-24   编辑:www.jquerycn.cn
最近这个项目中有几个需要录入日期的地方,开始由于没有对这些地方进行有效性验证,结果用户录入的日期有好多非法日期,诸如什么2007-2-29,还有2005-2-30等错误日期
最近这个项目中有几个需要录入日期的地方,开始由于没有对这些地方进行有效性验证,结果用户录入的日期有好多非法日期,诸如什么2007-2-29,还有2005-2-30等错误日期 导致数据库跑任务出现错误(任务根据日期来计算状态的,由于数据量比较大,都做成任务夜里跑),为了避免再出现此类的错误,所以增加了一个验证日期有效性的javascript方法。
本方法能够有效的验证闰年,支持的日期格式有:2009-01-01、2009/01/01两种格式。
javascript代码
复制代码 代码如下:

//判断日期是否合法
function IsDate(oTextbox) {
var regex = new RegExp("^(?:(?:([0-9]{4}(-|\/)(?:(?:0?[1,3-9]|1[0-2])(-|\/)(?:29|30)|((?:0?[13578]|1[02])(-|\/)31)))|([0-9]{4}(-|\/)(?:0?[1-9]|1[0-2])(-|\/)(?:0?[1-9]|1\\d|2[0-8]))|(((?:(\\d\\d(?:0[48]|[2468][048]|[13579][26]))|(?:0[48]00|[2468][048]00|[13579][26]00))(-|\/)0?2(-|\/)29))))$");
var dateValue = oTextbox.value;
if (!regex.test(dateValue)) {
alert("日期有误!");
dateValue = "";
this.focus();
return;
}
}

使用测试
复制代码 代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title></title>
<script type="text/javascript" src="jquery/JScript1.js"></script>
<script type="text/javascript" src="jQuery/jquery-vsdoc.js"></script>
</head>
<body>
<input type="text" id="sDate" />
<script type="text/javascript">
$("#sDate").blur(function() {IsDate($(this)[0]);})
</script>
</body>
</html>

您可能感兴趣的文章:
常用js验证代码大全(Email、手机号码、身份证号码、文件类型等)
javascript 验证日期的函数
修改jQuery Validation里默认的验证方法
jquery.validate使用攻略 第二部
jQuery表单验证插件 jqValidate
php日期格式合法性正则验证代码
JS验证日期格式YYYY-mm-dd的代码一例
php 正则验证日期时间格式实例代码
JS验证身份证有效性的实例代码
php验证码大全(实例分享)

[关闭]