下面是一个完整的检测 YYYY/MM/DD的 自己改吧 没时间帮你改
function Date_Ex(value1)
  {
 var strDate = value1;
 if (strDate.length == 0)  return -1;
 var reg = /^(\d{1,4})(\/|\/)(\d{1,2})\2(\d{1,2})/;   
 var r = strDate.match(reg);
 
 if (r == null)
 {
  return -1;
 } if (r[1] < 1850 || r[1] > 2100) 
 {
   return -4;
 }
 
 if (r[3] < 1 || r[3] >12) 
 {
return -5; 
 }
 
 var d = new Date(r[1], r[3]-1,r[4]);
 if (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4])
 {
  return value1;
 }
 else
 {
  return -6;
 }
 
 return value1;
  }

解决方案 »

  1.   

    <script> 
    function strDate(str){ 
    var reg = /^(\d{1,4})(- &brvbar;\/)(\d{1,2})\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]); 
    var newStr=d.getFullYear()+r[2]+(d.getMonth()+1)+r[2]+d.getDate() 
    return newStr==str 

    alert(strDate("2002-1-31")) 
    alert(strDate("2002-2-31")) 
    alert(strDate("2002-1-41")) 
    </script>
      

  2.   

    转载〉〉
    2.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.2 短日期,形如 (2003-12-05) 
          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]); 
          } 
      2.3 长时间,形如 (2003-12-05 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]); 
          }