欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

日期三级级联 博客分类: web前端 J# 

程序员文章站 2024-02-25 21:18:39
...
<select name="year" id="year"> 
   <option>选择年</option>         
</select> 
<select name="month" id="month"> 
   <option>选择月</option> 
</select> 
<select name="day" id="day"> 
   <option>选择日</option>
</select>

//取得当前年、月、日!
var nowTime=new Date();
var year=nowTime.getFullYear();
var month=nowTime.getMonth()+1;
var day=nowTime.getDate()
// var day=nowTime.getDay();
var mon=['31','28','31','30','31','30','31','31','30','31','30','31'];
function $(id){
   return document.getElementById(id)
}
 /*
  * 显示日期
  */
function showDate(){
  //写出年
   var num=0;
   for(var i=year;i>=year-30;i--){
	num++;
	$('year').options.add(new Option(i+"年",i));
	if(i==year){	
		$('year').options[num].selected=true;
	}	 
    }
   //写出月
   for(var j=1;j<=12;j++){
	$('month').options.add(new Option(j+"月",j));
	if(j==month){
		$('month').options[month].selected=true;
	}
   }
  //写出日
  changeDay(year,month);
  $('year').attachEvent('onchange',changeYear);
  $('month').attachEvent('onchange',changeMonth);	 
}
//判断是否为闰年
function isLeapYear(year){
     if((year%4==0&&year%100!=0)||(year%400==0)){
	return true;
     }else{
	return false;
     }
}
//根据所选年、月动态改变每月的天数!
function changeDay(y,m){
     var sum=0;
     if(isLeapYear(y)&& m==2){
	sum=parseInt(mon[m-1])+1;
     }else{
	sum=mon[m-1];
     }
     for(var k=1;k<=sum;k++){
	$('day').options.add(new Option(k+"日",k));
	if(k==day){
		$('day').options[day].selected=true;
	}
      }
}
//变化年
function changeYear(){
	$('month').options.selectedIndex = 1;
	$('day').options.selectedIndex = 1;
}
//变化月份
function changeMonth(){
	var Year = $('year').options[$('year').selectedIndex].value;
	var Month = $('month').options[$('month').selectedIndex].value;
	$('day').options.length = 1;
	changeDay(Year,Month); 
	$('day').options.selectedIndex = 1;
}

相关标签: J#