当前位置: 首页 > 图文教程 > 网络编程 > Javascript > JavaScript判断两种格式的输入日期的正确性的代码

Javascript
经验几则 推荐
一个很Cool的JS菜单效果
[原创]菜单制作学习一个小东西
基于Web标准的UI组件 — 树状菜单(2)
[原创]防止网站内容被小偷采集的js代码
javascript字典探测用户名工具
通过ifame指向的页面高度调整iframe的高度
实例:尽可能写友好的Javascript代码
关于javascript的“静态类"
拖动层
教学演示-UBB,剪贴板,textRange及其他
多线程的全选复选框
不错的一个日期输入 动态
非常不错的一个javascript 类
提示广告代码
各种浏览器兼容问题
重定向实现代码
[原创]网络复制内容时常用的正则+editplus
Js的MessageBox
注释的艺术:JS里直接写HTML,无需转义

Javascript 中的 JavaScript判断两种格式的输入日期的正确性的代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 255 ::
收藏到网摘: n/a

最简单的
复制代码 代码如下:

function isValidDate(dateStr) {
var matchArray = dateStr.match(/^[0-9]+-[0-1][0-9]-[0-3][0-9]$/)
if (matchArray == null) {
alert("Invalid date: " + dateStr);
return false;
}
return true;
}
function isValidDate(dateStr) {
var matchArray = dateStr.match(/^[0-9]+-[0-1][0-9]-[0-3][0-9]$/)
if (matchArray == null) {
alert("Invalid date: " + dateStr);
return false;
}
return true;
}

第二种
复制代码 代码如下:

<script language=javascript>
String.prototype.isDate = function()
{
var r = this.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]);
}
alert("2002-01-31".isDate());
alert("2002-01-41".isDate());
</script>
<script language=javascript>
String.prototype.isDate = function()
{
var r = this.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]);
}
alert("2002-01-31".isDate());
alert("2002-01-41".isDate());
</script>

第三种,比较复杂的
复制代码 代码如下:

<script language=javascript>
String.prototype.isTime = function()
{
var r = this.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/);
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]);
}
alert("2002-1-31 12:34:56".isTime());
alert("2001-2-29 12:54:56".isTime());
alert("2002-1-41 12:00:00".isTime());
</script>