日期:2014-05-16 浏览次数:20464 次
<script> //服务器返回当前年,月,日 var year=2011; var month=8; var day=4; var serviceDate; //设置当前时间 function setMyDate(year,month){ //设置当月第一天时间 serviceDate=new Date(year,month-1,1,0,0,0,0); document.getElementById("nowYear").value=year; document.getElementById("nowMonth").value=month; } //初始化下拉框 function initSelect(){ var yearSelect=document.getElementById("nowYear"); var monthSelect=document.getElementById("nowMonth"); for(var i=0;i<50;i++){ yearSelect.options.add(new Option(1990+i,1990+i)); } for(var i=1;i<13;i++){ monthSelect.options.add(new Option(i,i)); } } //返回当前年份月份天数 function getMonthDay(year,month){ var monthDay=[0,31,28,31,30,31,30,31,31,30,31,30,31]; //是否闰年 if((year%4==0&&year%100!=0)||year%400==0){ monthDay[1]=29; } return monthDay[month]; } //设置日期,星期对应 function setMonthValue(year,month,day){ var dayValue=getMonthDay(year,month); //当月第一天所对应星期 var oneDay=serviceDate.getDay(); var calenDarArray=[]; for(var i=1,j=0;i<=dayValue;i++){ if(i==1){ calenDarArray[j]=[]; calenDarArray[j][oneDay]=i; i=7-oneDay; } else{ calenDarArray[j]=[]; calenDarArray[j][0]=i; i=6+i; } j++; } return calenDarArray; } //设置日期到表格 function setDateToTable(year,month,day){ var mytable=document.getElementById("dateTable"); var tr6=document.getElementById("tr6"); var calenDarArray=setMonthValue(year,month,day); var monthDay=getMonthDay(year,month); if(calenDarArray.length==5){ tr6.style.display="none"; } else{ tr6.style.display="block"; } for(var i=0;i<calenDarArray.length;i++){ var row=mytable.rows[i+2]; var index=0; for(var j=0;j<7;j++){ var cell=row.cells[j]; if(calenDarArray[i][j]!=undefined){ index=j; cell.innerHTML=calenDarArray[i][index]++; } else{ cell.innerHTML=(calenDarArray[i][index]==undefined || calenDarArray[i][index]>monthDay)?" ":calenDarArray[i][index]++; } } } } //显示日历 function initCalenDar(year,month,day){ setMyDate(year,month); setDateToTable(year,month,day); } function fnYearChange(year){ var month=document.getElementById("nowMonth").value; initCalenDar(year,month); } function fnMonthChange(month){ var year=document.getElementById("nowYear").value; initCalenDar(year,month); } window.onload=function(){ initSelect(); initCalenDar(year,month); } </script> <body> <table id="dateTable" border="1" width="500" > <tr> <td colspan="7" height="20"> 年份:<select id="nowYear" onchange="fnYearChange(this.value)"></select> 月份:<select id="nowMonth" onchange="fnMonthChange(this.value)"></select> </td> </tr> <tr> <td>周日</td><td>周一</td><td>周二</td><td>周三</td><td>周四</td><td>周五</td><td>周六</td> </tr> <tr id="tr1"> <td height=20 width=20></td> <td height=20 width=20></td> <td height=20 width=20></td> <td height=20 width=20></td> <td height=20 width=20></td> <td height=20 width=20></td> <td height=20 width=20></td> </tr> <tr id="tr2"> <td height=20 width=20></td> <td height=20 width=20></td> <td height=20 width=20></td> <td height=20 width=20></td> <td height=20 width=20></td> <td height=20 width=20></td> <td height=20 width=20></td> </tr> <tr id="tr3"> <td height=20 width=20></td> <td height=20 width=20></td> <td height=20 width=20></td> <td height=20 width=20></td> <td height=20 width=20></td> <td height=20