在日本网站发现了一个利用javascript判断三个下拉表组成的日期的检查函数。
由于javascirpt 的new Date(y,m,d)函数在生成日期时会把Date(2009,02,31)自动转化成"2009/03/03",所以可以利用这个特点反向判断输入的日期是否合法。
代码如下:
<
script language
=
"
javascript
"
type
=
"
text/javascript
"
>
function CheckDate()
{
var intYear;
var intMonth;
var intDay;
intYear = document.getElementById( " DropDownList1 " ).value;
intMonth = document.getElementById( " DropDownList2 " ).value;
intDay = document.getElementById( " DropDownList3 " ).value;
var di = new Date(intYear,intMonth - 1 ,intDay);
if (di.getFullYear() == intYear && di.getMonth() == intMonth - 1 && di.getDate() == intDay)
{
alert( " Valid " );
}
else
{
alert( " Not Valid " );
}
}
< / script>
function CheckDate()
{
var intYear;
var intMonth;
var intDay;
intYear = document.getElementById( " DropDownList1 " ).value;
intMonth = document.getElementById( " DropDownList2 " ).value;
intDay = document.getElementById( " DropDownList3 " ).value;
var di = new Date(intYear,intMonth - 1 ,intDay);
if (di.getFullYear() == intYear && di.getMonth() == intMonth - 1 && di.getDate() == intDay)
{
alert( " Valid " );
}
else
{
alert( " Not Valid " );
}
}
< / script>