<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>日期和年份月份联动demo</title>
</head>
<body>
<select id="year">
<option value="">请选择年份</option>
</select>
<select id="month">
<option value="">请选择月份</option>
</select>
<select id="day">
<option value="">请选择日期</option>
</select>
<script>
var year = document.getElementById("year");
var month = document.getElementById("month");
var day = document.getElementById("day");
var y = new Date().getFullYear();
//前后均有
for (i = (y - 30); i < (y + 30); i++) {
year.options.add(new Option(i + "年", i));
//格式不要写错,不要写成add(new Option(i + "年"), i)。
}
//只写前或者后
// for(var i=y;i>1977;i--){
// year.options[y+1-i]=new Option(i+"年",i);//索引是options[],增加是new option(text,value)
// }
for (i = 1; i < 13; i++) {
month.options.add(new Option(i + "月", i));
}
var d = function () {
day.length = 1; //初始化
if (year.value == " " || month.value == " ") {
return;
} else {
var Days = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
if ((year.value % 4 == 0 && year.value % 100 != 0) || year.value % 400 == 0) {
Days[1]++; //判断为闰年,二月天数加一
}
for (i = 1; i <= Days[month.value - 1]; i++) {
day.options.add(new Option((i + "日"), i));
}
}
}
//刷新日期天数
year.onchange = function () {
d();
}
month.onchange = function () {
d();
}
</script>
</body>
</html>
|