前几天看了廖兄的关于用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>