<html>
    <head><title>日期有效性检测--支持格式:yyyy-mm-dd,yyyy/mm/dd,mm/dd/yyyy,mm-dd-yyyy</title>
    <script language="JavaScript">
    <!--
    function validateDate(fld) {
       if (!checkDate(fld.value)) {
          fld.focus( );
          fld.select( );
          return false;
       }
       return true;
     }
    
   function checkDate(entry) {
    var mo, day, yr;
    var re = /\b\d{4}[\/-]\d{1,2}[\/-]\d{1,2}\b/;
    var re1= /\b\d{1,2}[\/-]\d{1,2}[\/-]\d{4}\b/;
    if ((re.test(entry)||re1.test(entry))&&entry.length<=10)
    {
        var delimChar = (entry.indexOf("/") != -1) ? "/" : "-";
        var delim1 = entry.indexOf(delimChar);
        var delim2 = entry.lastIndexOf(delimChar);
 if(re.test(entry))
 {
        yr = parseInt(entry.substring(0, delim1), 10);
        mo = parseInt(entry.substring(delim1+1, delim2), 10);
        day = parseInt(entry.substring(delim2+1), 10);
 }
 else
 {
            mo = parseInt(entry.substring(0, delim1), 10);
         day = parseInt(entry.substring(delim1+1, delim2), 10);
            yr = parseInt(entry.substring(delim2+1), 10);
 }
        var testDate = new Date(yr, mo-1, day);
        //alert(testDate.toLocaleDateString());
        if (testDate.getDate( ) == day)
 {
            if (testDate.getMonth( ) + 1 == mo)
     {
                if (testDate.getFullYear( ) == yr)
  {
                    return true;
                }
  else
  {
                    alert("日期无效,年份错误!");
                }
            }
     else
     {
                alert("日期无效,月份错误!");
            }
        }
 else
 {
            alert("日期无效,日子错误!");
        }
    }
    else
    {
        alert("输入的日期格式无效。请以下述格式输入:yyyy/mm/dd,yyyy-mm-dd,mm/dd/yyyy,mm-dd-yyyy");
    }
    return false;
}
    
    // -->
    </script>
    </head>
    <body><font face="宋体" size="+1">
    <form name="DateTest" >
    请输入日期:
    <input type="text"
       name="Datecode"
       size=40>
       <br>
    <input type="button"
       value="检测日期"
       onClick="if( validateDate(DateTest.Datecode)) {alert('日期有效。')}">
    <br><input type="reset" value="重置">
    </form>
    </body>
    </html>