您的位置:首页 > Web前端 > JavaScript

js实现三级联动-年月日

2012-11-13 15:45 513 查看
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>三级联动-年月日</title>
<script type="text/javascript" src="getDates.js">
</script>
</head>
<body>
<select name="year" onchange="initDate()">
<script type="text/javascript">
<!--在 FF等浏览器内getYear()返回的是 "当前年份-1900" 的值-->
var year=new Date().getFullYear();
for(var i = year - 30;i <= year + 30; i++){
document.write("<option value=" + i + ">" + i + "</option>");
}
</script>
</select>
<select name="month" onchange="initDate()">
<script type="text/javascript">
for(var i = 1; i <= 12; i++){
document.write("<option value=" + i + ">" + i + "</option>");
}
</script>
</select>
<select name="day">
<script type="text/javascript">
for(var i = 1; i <= 31; i++){
document.write("<option value=" + i + ">" + i + "</option>");
}
</script>
</select>
</body>
</html>


getDates.js

function  append(o,v){
var option=new Option(v,v);
o.options.add(option);
}
function  initDate(){
var y = document.getElementsByName("year")[0].value;
var m = document.getElementsByName("month")[0].value;
var day=document.getElementsByName("day")[0];
day.innerHTML="";

if(m==1 || m==3 || m==5 || m==7 || m==8 || m==10 || m==12){
for(var j = 1; j <= 31; j++){
append(day,j);
}
}
else if(m==4 || m==6 || m==9 || m==11){
for(var j = 1; j <= 30; j++){
append(day,j);
}
}
else if(m == 2){
var flag = (y % 4 == 0)&& (y % 100 != 0) || (y % 400 == 0);
if(flag){
for(var j = 1; j <= 29; j++){
append(day,j);
}
}
else{
for(var j = 1;j <= 28; j++){
append(day,j);
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: