複製程式碼 程式碼如下: 请选择 年 选择 月 选择 日 <br> function window.onload() {<br> strYYYY = document.form1.YYYY.outerHTML;<br> strMM = document.form1.MM.outerHTML;<br> strDD = document.form1.DD.outerHTML;<br> MonHead = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];</p> <p> //先给年下拉框赋内容<br> var y = new Date().getFullYear();<br> var str = strYYYY.substring(0, strYYYY.length - 9);<br> for (var i = (y - 30); i < (y + 30); i++) //以今年为准,前30年,后30年<BR> {<BR> str += "<option value='" + i + "'> " + i + " 年" + "</option>\r\n";<br> }<br> document.form1.YYYY.outerHTML = str + "</select>";</p> <p> //赋月份的下拉框<br> var str = strMM.substring(0, strMM.length - 9);<br> for (var i = 1; i < 13; i++) {<BR> str += "<option value='" + i + "'> " + i + " 月" + "</option>\r\n";<br> }<br> document.form1.MM.outerHTML = str + "</select>";</p> <p> document.form1.YYYY.value = y;<br> document.form1.MM.value = new Date().getMonth() + 1;<br> var n = MonHead[new Date().getMonth()];<br> if (new Date().getMonth() == 1 && IsPinYear(YYYYvalue)) n++;<br> writeDay(n); //赋日期下拉框<br> document.form1.DD.value = new Date().getDate();<br> }</p> <p> function YYYYMM(str) //年发生变化时日期发生变化(主要是判断闰平年)<br> {<br> var MMvalue = document.form1.MM.options[document.form1.MM.selectedIndex].value;<br> if (MMvalue == "") { DD.outerHTML = strDD; return; }<br> var n = MonHead[MMvalue - 1];<br> if (MMvalue == 2 && IsPinYear(str)) n++;<br> writeDay(n)<br> }</p> <p> function MMDD(str) //月发生变化时日期联动<br> {<br> var YYYYvalue = document.form1.YYYY.options[document.form1.YYYY.selectedIndex].value;<br> if (str == "") { DD.outerHTML = strDD; return; }<br> var n = MonHead[str - 1];<br> if (str == 2 && IsPinYear(YYYYvalue)) n++;<br> writeDay(n)<br> }</p> <p> function writeDay(n) //依條件寫日期的下拉方塊<br> {<br> for (var i = 1; i s = "<option value='" i "'> " i " 日" "</option>"";<br> }<br> <br> function IsPinYear(year)//判斷是否閏平年</p> {<p> {<br> ear % 400 == 0))<br> }<br><br></p> </div>