js实现三级联动-年月日

<!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" οnchange="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" οnchange="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);
						}
					}
				}
			}



 

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值