<script>
function YMD(year, month, date)
{
MonHead = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
for (var i = 1912; i <= 2031; i++)
document.getElementById("Y").options.add(new Option(i + "Year", i));
//赋年份的下拉框
for (var i = 1; i < 13; i++)
document.getElementById("M").options.add(new Option(i + "Mon", i));
//赋月份的下拉框
document.getElementById("Y").value = year
document.getElementById("M").value = month
var n = MonHead[month - 1];
if (month == 2 && IsPinYear(year)) n++;
writeDay(n);
//赋日期下拉框
document.getElementById("D").value = date;
}
function YC(str)
//年发生变化时日期发生变化(主要是判断闰平年)
{
var Mvalue = document.getElementById("M").options[document.getElementById("M").selectedIndex].value;
if (Mvalue == "") {
var e = document.getElementById("D");
optionsClear(e);
return;
}
var n = MonHead[Mvalue - 1];
if (Mvalue == 2 && IsPinYear(str)) n++;
writeDay(n);
}
function MC(str)
//月发生变化时日期联动
{
var Yvalue = document.getElementById("Y").options[document.getElementById("Y").selectedIndex].value;
if (Yvalue == "") {
var e = document.getElementById("D");
optionsClear(e);
return;
}
var n = MonHead[str - 1];
if (str == 2 && IsPinYear(Yvalue)) n++;
writeDay(n);
}
function writeDay(n)
//据条件写日期的下拉框
{
var e = document.getElementById("D");
optionsClear(e);
for (var i = 1; i < (n + 1); i++)
e.options.add(new Option(i + "day", i));
}
function IsPinYear(year)
//判断是否闰平年
{
return (0 == year % 4 && (year % 100 != 0 || year % 400 == 0));
}
function optionsClear(e) {
e.options.length = 0;
}
</script>
<p align="center">
<select name="Y" id="Y" onchange="YC(this.value)"> </select>
<select name="M" id="M" onchange="MC(this.value)"></select>
<select name="D" id="D"></select>
<script>
YMD(2012,3,28);
function getDay(){
daystr=document.getElementById("Y").value+"-"+document.getElementById("M").value+"-"+document.getElementById("D").value;
alert(daystr);
//alert(window.location=daystr);
return daystr;
}
</script>
<input type='button' value="search" onclick="getDay();" />
</p>