日期:2009-03-17  浏览次数:21215 次

前几天看了廖兄的关于用javascript检查yyyy-mm-dd格式的文章,调试了一下,发现有误,现给出正确的源码,欢迎大家指教。
程序在Pwin98,pws下通过,不过有两点不明白,请大家赐教!
1、如果用  var Date1 = new Date(2000,12,31); 的话,Date1将得到2001,1,31
月份自动加1.
2、new Date(2000,12,31)的格式与书上的new Date(12,31,2000)格式不同,是不是与服务器的日期有关?

*******************************
<SCRIPT  LANGUAGE=javascript>          
<!--      

function form4_onsubmit()          
{

    ymd1=form4.date1.value.split("-");
    month1=ymd1[1]-1
       var Date1 = new Date(ymd1[0],month1,ymd1[2]);
if (Date1.getMonth()+1!=ymd1[1]||Date1.getDate()!=ymd1[2]||Date1.getFullYear()!=ymd1[0]||ymd1[0].length!=4)
    {
       alert("非法日期,请依【YYYY-MM-DD】格式输入");
        form4.date1.focus();
        return false;          
        }
alert("输入日期:" + form4.date1.value);
return true;
}
//-->          
</SCRIPT>
<% nowdate=year(date)&"-"&month(date)&"-"&day(date)%>
<form name=form4 method="POST" action="chkfind.asp" onsubmit="return form4_onsubmit()">                          
<input type="text" name="date1" size="12" value=<%=nowdate%> >      
</form>