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


Posted in Javascript onMarch 25, 2007

最简单的

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>   
Javascript 相关文章推荐
浅析JS刷新框架中的其他页面 &amp;&amp; JS刷新窗口方法汇总
Jul 08 Javascript
jquery自定义滚动条插件示例分享
Feb 21 Javascript
js判断为空Null与字符串为空简写方法
Feb 24 Javascript
JavaScript中使用Math.floor()方法对数字取整
Jun 15 Javascript
Vue数据驱动模拟实现5
Jan 13 Javascript
JavaScript控制浏览器全屏显示简单示例
Jul 05 Javascript
js指定日期增加指定月份的实现方法
Dec 19 Javascript
小程序开发踩坑:页面窗口定位(相对于浏览器定位)(推荐)
Apr 25 Javascript
微信小程序获取地理位置及经纬度授权代码实例
Sep 18 Javascript
Bootstrap table 实现树形表格联动选中联动取消功能
Sep 30 Javascript
微信小程序中的video视频实现 自定义播放按钮、封面图、视频封面上文案
Jan 02 Javascript
JS数组push、unshift、pop、shift方法的实现与使用方法示例
Apr 29 Javascript
表单(FORM)的一些实用效果代码
Mar 25 #Javascript
推荐dojo学习笔记
Mar 24 #Javascript
利用Dojo和JSON建立无限级AJAX动态加载的功能模块树
Mar 24 #Javascript
tbody元素支持嵌套的注意方法
Mar 24 #Javascript
xml 与javascript结合的问题解决方法
Mar 24 #Javascript
用prototype实现的简单小巧的多级联动菜单
Mar 24 #Javascript
this[] 指的是什么内容 讨论
Mar 24 #Javascript
You might like
怎么样可以把 phpinfo()屏蔽掉?
2006/11/24 PHP
第4章 数据处理-php数组的处理-郑阿奇
2011/07/04 PHP
php中get_cfg_var()和ini_get()的用法及区别
2015/03/04 PHP
php中mkdir()函数的权限问题分析
2016/09/24 PHP
php微信高级接口调用方法(自定义菜单接口、客服接口、二维码)
2016/11/28 PHP
PHP用户注册邮件激活账户的实现代码
2017/05/31 PHP
javascript 表格排序和表头浮动效果(扩展SortTable)
2009/04/07 Javascript
javascript 动态生成私有变量访问器
2009/12/06 Javascript
基于jquery的滚动新闻列表
2010/06/19 Javascript
Jquery创建层显示标题和内容且随鼠标移动而移动
2014/01/26 Javascript
Backbone.js的一些使用技巧
2015/07/01 Javascript
浅谈JavaScript的Polymer框架中的事件绑定
2015/07/29 Javascript
Node.js刷新session过期时间的实现方法推荐
2016/05/18 Javascript
JavaScript语言精粹经典实例(整理篇)
2016/06/07 Javascript
详谈js中window.location.search的用法和作用
2017/02/13 Javascript
jQuery实现验证表单密码一致性及正则表达式验证邮箱、手机号的方法
2017/12/05 jQuery
vue中实现在外部调用methods的方法(推荐)
2018/02/08 Javascript
详解如何使用node.js的开发框架express创建一个web应用
2018/12/20 Javascript
微信小程序学习笔记之跳转页面、传递参数获得数据操作图文详解
2019/03/28 Javascript
ES6基础之数组和对象的拓展实例详解
2019/08/22 Javascript
详解小程序BackgroundAudioManager踩坑之旅
2019/12/08 Javascript
原生JavaScript实现的无缝滚动功能详解
2020/01/17 Javascript
详解JS深拷贝与浅拷贝
2020/08/04 Javascript
使用Python判断IP地址合法性的方法实例
2014/03/13 Python
一键搞定python连接mysql驱动有关问题(windows版本)
2016/04/23 Python
python3.4用循环往mysql5.7中写数据并输出的实现方法
2017/06/20 Python
python利用urllib实现爬取京东网站商品图片的爬虫实例
2017/08/24 Python
Python Pandas 箱线图的实现
2019/07/23 Python
numpy按列连接两个维数不同的数组方式
2019/12/06 Python
tensorflow实现在函数中用tf.Print输出中间值
2020/01/21 Python
耐克巴西官方网站:Nike巴西
2016/08/14 全球购物
台湾演唱会订票网站:StubHub台湾
2019/06/11 全球购物
Lungolivigno Fashion官网:高级时装在线购物
2020/10/17 全球购物
技校学生个人职业生涯规划范文
2014/03/03 职场文书
小学生演讲稿大全
2014/04/25 职场文书
阿里云服务器部署RabbitMQ集群的详细教程
2022/06/01 Servers