一段经典的日历下拉JS

Time.js内容
None.gif //  JScript File
None.gif
function  fTime(iHour,iSec,iMin)
ExpandedBlockStart.gifContractedBlock.gif
dot.gif {
InBlock.gif 
return iHour+iSec+iMin;
ExpandedBlockEnd.gif}

None.gif
// 当前日期
None.gif//
" maxlength="10"   readonly  οnclick="fPopCalendar(datBegin,datBegin);return false">日<%h_time(int(hour(dateandtime_start))),23,"datHourBegin"%>时<%h_time(int(minute(dateandtime_start))),59,"datMinuteBegin"%>分(日期格式:yyyy-mm-dd)
None.gif
function  getNowDate()
ExpandedBlockStart.gifContractedBlock.gif
dot.gif {
InBlock.gif   
var nn=new Date();
InBlock.gif   year1
=nn.getYear();
InBlock.gif   mon1
=nn.getMonth()+1;
InBlock.gif   date1
=nn.getDate();
InBlock.gif   
var monstr1;
InBlock.gif   
var datestr1
InBlock.gif   
if(mon1<10
InBlock.gif    monstr1
="0"+mon1;
InBlock.gif   
else
InBlock.gif    monstr1
=""+mon1;
InBlock.gif     
InBlock.gif   
if(date1<10
InBlock.gif     datestr1
="0"+date1;
InBlock.gif   
else
InBlock.gif     datestr1
=""+date1;
InBlock.gif   
return year1+"-"+monstr1+"-"+datestr1;
ExpandedBlockEnd.gif}

None.gif
// 目标日期
None.gif
function  getlastweekDate()
ExpandedBlockStart.gifContractedBlock.gif
dot.gif {
InBlock.gif   
var nn=new Date();
InBlock.gif   year1
=nn.getYear();
InBlock.gif   mon1
=nn.getMonth()+1;
InBlock.gif   date1
=nn.getDate();
InBlock.gif   
InBlock.gif   
var mm=new Date(year1,mon1-1,date1);
InBlock.gif   
var tmp1=new Date(2000,1,1);
InBlock.gif   
var tmp2=new Date(2000,1,15);
InBlock.gif   
var ne=tmp2-tmp1;
InBlock.gif   
var mm2=new Date();
InBlock.gif   mm2.setTime(mm.getTime()
-ne);
InBlock.gif
InBlock.gif 
InBlock.gif   
InBlock.gif   
InBlock.gif   year2
=mm2.getYear();
InBlock.gif   mon2
=mm2.getMonth()+1;
InBlock.gif   date2
=mm2.getDate();
InBlock.gif    
InBlock.gif    
InBlock.gif     
if(mon2<10
InBlock.gif    monstr2
="0"+mon2;
InBlock.gif   
else
InBlock.gif    monstr2
=""+mon2;
InBlock.gif     
InBlock.gif   
if(date2<10
InBlock.gif     datestr2
="0"+date2;
InBlock.gif   
else
InBlock.gif     datestr2
=""+date2;
InBlock.gif 
InBlock.gif   
InBlock.gif    
return year2+"-"+monstr2+"-"+datestr2;
ExpandedBlockEnd.gif}

None.gif
None.gif
None.gif
var  gdCtrl  =   new  Object();
None.gif
var  goSelectTag  =   new  Array();
None.gif
var  gcGray    =   " #808080 " ;
None.gif
var  gcToggle  =   " #FB8664 " ;
None.gif
var  gcBG  =   " #e5e6ec " ;
None.gif
var  previousObject  =   null ;
None.gif
None.gif
var  gdCurDate  =   new  Date();
None.gif
var  giYear  =  gdCurDate.getFullYear();
None.gif
var  giMonth  =  gdCurDate.getMonth() + 1 ;
None.gif
var  giDay  =  gdCurDate.getDate();
None.gif
function  fSetToday()   // 直接获取现在的时间
ExpandedBlockStart.gifContractedBlock.gif
dot.gif {
InBlock.gif 
ExpandedBlockEnd.gif}

None.gif
ExpandedBlockStart.gifContractedBlock.gif
function  fSetDate(iYear, iMonth, iDay) dot.gif {                         
InBlock.gif
InBlock.gif  VicPopCal.style.visibility 
= "hidden";
ExpandedSubBlockStart.gifContractedSubBlock.gif  
if ((iYear == 0&& (iMonth == 0&& (iDay == 0))dot.gif{
InBlock.gif   gdCtrl.value 
= "";
ExpandedSubBlockStart.gifContractedSubBlock.gif  }
elsedot.gif{
InBlock.gif   iMonth 
= iMonth + 100 + "";
InBlock.gif   iMonth 
= iMonth.substring(1);
InBlock.gif   iDay   
= iDay + 100 + "";
InBlock.gif   iDay   
= iDay.substring(1);
InBlock.gif   
var t = "";
InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif   
if(gdCtrl.tagName == "INPUT")dot.gif{
InBlock.gif      gdCtrl.value 
= iYear+"-"+iMonth+"-"+iDay+" "+ t;
ExpandedSubBlockStart.gifContractedSubBlock.gif   }
elsedot.gif{
InBlock.gif      gdCtrl.innerText 
= iYear+"-"+iMonth+"-"+iDay+ " "+t;
ExpandedSubBlockEnd.gif   }

ExpandedSubBlockEnd.gif  }

InBlock.gif  
InBlock.gif  
for (i in goSelectTag)
InBlock.gif   goSelectTag[i].style.visibility 
= "visible";
InBlock.gif  goSelectTag.length 
= 0;
InBlock.gif  
InBlock.gif  window.returnValue
=gdCtrl.value;
InBlock.gif  
//window.close();
InBlock.gif

ExpandedBlockEnd.gif}

None.gif
None.gif
function  HiddenDiv()
ExpandedBlockStart.gifContractedBlock.gif
dot.gif {
InBlock.gif 
var i;
InBlock.gif  VicPopCal.style.visibility 
= "hidden";
InBlock.gif  
for (i in goSelectTag)
InBlock.gif   goSelectTag[i].style.visibility 
= "visible";
InBlock.gif  goSelectTag.length 
= 0;
InBlock.gif
ExpandedBlockEnd.gif}

ExpandedBlockStart.gifContractedBlock.gif
function  fSetSelected(aCell) dot.gif {
InBlock.gif  
var iOffset = 0;
InBlock.gif  
var iYear = parseInt(tbSelYear.value);
InBlock.gif  
var iMonth = parseInt(tbSelMonth.value);
InBlock.gif  
InBlock.gif  aCell.bgColor 
= gcBG;
ExpandedSubBlockStart.gifContractedSubBlock.gif  
with (aCell.children["cellText"])dot.gif{
InBlock.gif   
var iDay = parseInt(innerText);
InBlock.gif   
if (color==gcGray)
InBlock.gif  iOffset 
= (Victor<10)?-1:1;
InBlock.gif iMonth 
+= iOffset;
ExpandedSubBlockStart.gifContractedSubBlock.gif 
if (iMonth<1dot.gif{
InBlock.gif  iYear
--;
InBlock.gif  iMonth 
= 12;
ExpandedSubBlockStart.gifContractedSubBlock.gif }
else if (iMonth>12)dot.gif{
InBlock.gif  iYear
++;
InBlock.gif  iMonth 
= 1;
ExpandedSubBlockEnd.gif }

ExpandedSubBlockEnd.gif  }

InBlock.gif  fSetDate(iYear, iMonth, iDay);
ExpandedBlockEnd.gif}

None.gif
ExpandedBlockStart.gifContractedBlock.gif
function  Point(iX, iY) dot.gif {
InBlock.gif 
this.x = iX;
InBlock.gif 
this.y = iY;
ExpandedBlockEnd.gif}

None.gif
ExpandedBlockStart.gifContractedBlock.gif
function  fBuildCal(iYear, iMonth)  dot.gif {
InBlock.gif  
var aMonth=new Array();
InBlock.gif  
for(i=1;i<7;i++)
InBlock.gif   aMonth[i]
=new Array(i);
InBlock.gif  
InBlock.gif  
var dCalDate=new Date(iYear, iMonth-11);
InBlock.gif  
var iDayOfFirst=dCalDate.getDay();
InBlock.gif  
var iDaysInMonth=new Date(iYear, iMonth, 0).getDate();
InBlock.gif  
var iOffsetLast=new Date(iYear, iMonth-10).getDate()-iDayOfFirst+1;
InBlock.gif  
var iDate = 1;
InBlock.gif  
var iNext = 1;
InBlock.gif
InBlock.gif  
for (d = 0; d < 7; d++)
InBlock.gif aMonth[
1][d] = (d<iDayOfFirst)?-(iOffsetLast+d):iDate++;
InBlock.gif  
for (w = 2; w < 7; w++)
InBlock.gif   
for (d = 0; d < 7; d++)
InBlock.gif  aMonth[w][d] 
= (iDate<=iDaysInMonth)?iDate++:-(iNext++);
InBlock.gif  
return aMonth;
ExpandedBlockEnd.gif}

None.gif
ExpandedBlockStart.gifContractedBlock.gif
function  fDrawCal(iYear, iMonth, iCellHeight, sDateTextSize)  dot.gif {
InBlock.gif  
var WeekDay = new Array("","","","","","","");
InBlock.gif  
var styleTD = " bgcolor='"+gcBG+"' bordercolor='"+gcBG+"' valign='middle' align='center' height='"+iCellHeight+"' style='font:bold arial "+sDateTextSize+";";            //Coded by Hcy email:[email protected]
InBlock.gif

ExpandedSubBlockStart.gifContractedSubBlock.gif  
with (document) dot.gif{
InBlock.gif write(
"");
ExpandedSubBlockStart.gifContractedSubBlock.gif 
for(i=0; i<7; i++)dot.gif{
InBlock.gif  write(
""+styleTD+"color:maroon' >"+ WeekDay[i] + "");
ExpandedSubBlockEnd.gif }

InBlock.gif write(
"");
InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif   
for (w = 1; w < 7; w++dot.gif{
InBlock.gif  write(
"");
ExpandedSubBlockStart.gifContractedSubBlock.gif  
for (d = 0; d < 7; d++dot.gif{
InBlock.gif   write(
""+styleTD+"cursor:hand;' onMouseOver='this.bgColor=gcToggle' onMouseOut='this.bgColor=gcBG' οnclick='fSetSelected(this)'>");
InBlock.gif   write(
" ");   
InBlock.gif   write(
"")
ExpandedSubBlockEnd.gif  }

InBlock.gif  write(
"");
ExpandedSubBlockEnd.gif }

ExpandedSubBlockEnd.gif  }

ExpandedBlockEnd.gif}

None.gif
ExpandedBlockStart.gifContractedBlock.gif
function  fUpdateCal(iYear, iMonth)  dot.gif {
InBlock.gif  myMonth 
= fBuildCal(iYear, iMonth);
InBlock.gif  
var i = 0;
InBlock.gif  
for (w = 0; w < 6; w++)
InBlock.gif 
for (d = 0; d < 7; d++)
ExpandedSubBlockStart.gifContractedSubBlock.gif  
with (cellText[(7*w)+d]) dot.gif{
InBlock.gif   Victor 
= i++;
ExpandedSubBlockStart.gifContractedSubBlock.gif   
if (myMonth[w+1][d]<0dot.gif{
InBlock.gif    color 
= gcGray;
InBlock.gif    innerText 
= -myMonth[w+1][d];
InBlock.gif    
ExpandedSubBlockStart.gifContractedSubBlock.gif   }
elsedot.gif{
InBlock.gif    color 
= ((d==0)||(d==6))?"red":"black";
InBlock.gif    innerText 
= myMonth[w+1][d];
InBlock.gif       
ExpandedSubBlockEnd.gif   }

ExpandedSubBlockEnd.gif  }

ExpandedBlockEnd.gif}

None.gif
ExpandedBlockStart.gifContractedBlock.gif
function  fSetYearMon(iYear, iMon) dot.gif {
InBlock.gif  tbSelMonth.options[iMon
-1].selected = true;
InBlock.gif  
for (i = 0; i < tbSelYear.length; i++)
InBlock.gif 
if (tbSelYear.options[i].value == iYear)
InBlock.gif  tbSelYear.options[i].selected 
= true;
InBlock.gif  fUpdateCal(iYear, iMon);
ExpandedBlockEnd.gif}

None.gif
ExpandedBlockStart.gifContractedBlock.gif
function  fPrevMonth() dot.gif {
InBlock.gif  
var iMon = tbSelMonth.value;
InBlock.gif  
var iYear = tbSelYear.value;
InBlock.gif  
ExpandedSubBlockStart.gifContractedSubBlock.gif  
if (--iMon<1dot.gif{
InBlock.gif   iMon 
= 12;
InBlock.gif   iYear
--;
ExpandedSubBlockEnd.gif  }

InBlock.gif  
InBlock.gif  fSetYearMon(iYear, iMon);
ExpandedBlockEnd.gif}

None.gif
ExpandedBlockStart.gifContractedBlock.gif
function  fNextMonth() dot.gif {
InBlock.gif  
var iMon = tbSelMonth.value;
InBlock.gif  
var iYear = tbSelYear.value;
InBlock.gif  
ExpandedSubBlockStart.gifContractedSubBlock.gif  
if (++iMon>12dot.gif{
InBlock.gif   iMon 
= 1;
InBlock.gif   iYear
++;
ExpandedSubBlockEnd.gif  }

InBlock.gif  
InBlock.gif  fSetYearMon(iYear, iMon);
ExpandedBlockEnd.gif}

None.gif
ExpandedBlockStart.gifContractedBlock.gif
function  fToggleTags() dot.gif {
ExpandedSubBlockStart.gifContractedSubBlock.gif  
with (document.all.tags("Select"))dot.gif{
InBlock.gif  
for (i=0; i<length; i++)
ExpandedSubBlockStart.gifContractedSubBlock.gif   
if ((item(i).Victor!="Won")&&fTagInBound(item(i)))dot.gif{
InBlock.gif    item(i).style.visibility 
= "hidden";
InBlock.gif    goSelectTag[goSelectTag.length] 
= item(i);
ExpandedSubBlockEnd.gif   }

ExpandedSubBlockEnd.gif  }

ExpandedBlockEnd.gif}

None.gif
ExpandedBlockStart.gifContractedBlock.gif
function  fTagInBound(aTag) dot.gif {
ExpandedSubBlockStart.gifContractedSubBlock.gif  
with (VicPopCal.style)dot.gif{
InBlock.gif   
var l = parseInt(left);
InBlock.gif   
var t = parseInt(top);
InBlock.gif   
var r = l+parseInt(width);
InBlock.gif   
var b = t+parseInt(height);
InBlock.gif 
var ptLT = fGetXY(aTag);
InBlock.gif 
return !((ptLT.x>r)||(ptLT.x+aTag.offsetWidth<l)||(ptLT.y>b)||(ptLT.y+aTag.offsetHeight<t));
ExpandedSubBlockEnd.gif  }

ExpandedBlockEnd.gif}

None.gif
ExpandedBlockStart.gifContractedBlock.gif
function  fGetXY(aTag) dot.gif {
InBlock.gif  
var oTmp = aTag;
InBlock.gif  
var pt = new Point(0,0);
ExpandedSubBlockStart.gifContractedSubBlock.gif  
do dot.gif{
InBlock.gif   pt.x 
+= oTmp.offsetLeft;
InBlock.gif   pt.y 
+= oTmp.offsetTop;
InBlock.gif   oTmp 
= oTmp.offsetParent;
ExpandedSubBlockEnd.gif  }
 while(oTmp.tagName!="BODY");
InBlock.gif  
return pt;
ExpandedBlockEnd.gif}

None.gif
None.gif
//  Main: popCtrl is the widget beyond which you want this calendar to appear;
None.gif//
       dateCtrl is the widget into which you want to put the selected date.
None.gif//
 i.e.: 
ExpandedBlockStart.gifContractedBlock.gif
function  fPopCalendar(popCtrl, dateCtrl,strDate) dot.gif {
ExpandedSubBlockStart.gifContractedSubBlock.gif  
if (popCtrl == previousObject)dot.gif{
ExpandedSubBlockStart.gifContractedSubBlock.gif    
if (VicPopCal.style.visibility == "visible")dot.gif{
InBlock.gif    HiddenDiv();
InBlock.gif    
return true;
ExpandedSubBlockEnd.gif   }

InBlock.gif   
ExpandedSubBlockEnd.gif  }

InBlock.gif  previousObject 
= popCtrl;
InBlock.gif  gdCtrl 
= dateCtrl;
InBlock.gif  fInitialDate(strDate);
InBlock.gif  fSetYearMon(giYear, giMonth); 
InBlock.gif  
var point = fGetXY(popCtrl);
ExpandedSubBlockStart.gifContractedSubBlock.gif  
with (VicPopCal.style) dot.gif{
InBlock.gif   left 
= point.x+10;   //弹出窗口的坐标
InBlock.gif
 top  = point.y+popCtrl.offsetHeight+15;
InBlock.gif width 
= VicPopCal.offsetWidth;
InBlock.gif width 
= 180//
InBlock.gif
 height = VicPopCal.offsetHeight;
InBlock.gif height 
= 180;
InBlock.gif fToggleTags(point);  
InBlock.gif visibility 
= 'visible';
ExpandedSubBlockEnd.gif  }

ExpandedBlockEnd.gif}

None.gif
None.gif
//  Added by Han Chen
ExpandedBlockStart.gifContractedBlock.gif
function  fInitialDate(strDate) dot.gif {
InBlock.gif 
if( strDate == null || strDate.length != 10 )
InBlock.gif  
return false;
InBlock.gif
InBlock.gif 
var sYear  = strDate.substring(0,4);
InBlock.gif 
var sMonth = strDate.substring(5,7);
InBlock.gif 
var sDay   = strDate.substring(8,10);
InBlock.gif
ExpandedSubBlockStart.gifContractedSubBlock.gif 
if( sMonth.charAt(0== '0' ) dot.gif{ sMonth = sMonth.substring(1,2); }
ExpandedSubBlockStart.gifContractedSubBlock.gif 
if( sDay.charAt(0)   == '0' ) dot.gif{ sDay   = sDay.substring(1,2);   }
InBlock.gif
InBlock.gif 
var nYear  = parseInt(sYear );
InBlock.gif 
var nMonth = parseInt(sMonth);
InBlock.gif 
var nDay   = parseInt(sDay  );
InBlock.gif 
InBlock.gif 
if ( isNaN(nYear ) ) return false;
InBlock.gif 
if ( isNaN(nMonth) ) return false;
InBlock.gif 
if ( isNaN(nDay  ) ) return false;
InBlock.gif
InBlock.gif 
var arrMon = new Array(12);
InBlock.gif arrMon[ 
0= 31; arrMon[ 1= nYear % 4 == 0 ? 29:28;
InBlock.gif arrMon[ 
2= 31; arrMon[ 3= 30;
InBlock.gif arrMon[ 
4= 31; arrMon[ 5= 30;
InBlock.gif arrMon[ 
6= 31; arrMon[ 7= 31;
InBlock.gif arrMon[ 
8= 30; arrMon[ 9= 31;
InBlock.gif arrMon[
10= 30; arrMon[11= 31;
InBlock.gif
InBlock.gif 
if ( nYear  < 1900 || nYear > 2100 )   return false;
InBlock.gif 
if ( nMonth < 1 || nMonth > 12 )    return false;
InBlock.gif 
if ( nDay < 1 || nDay > arrMon[nMonth - 1] ) return false;
InBlock.gif
InBlock.gif giYear  
= nYear;
InBlock.gif giMonth 
= nMonth;
InBlock.gif giDay   
= nDay;
InBlock.gif 
return true;
ExpandedBlockEnd.gif}

None.gif
None.gif
var  gMonths  =   new  Array( " 1月 " , " 2月 " , " 3月 " , " 4月 " , " 5月 " , " 6月 " , " 7月 " , " 8月 " , " 9月 " , " 10月 " , " 11月 " , " 12月 " );
None.gif
ExpandedBlockStart.gifContractedBlock.gif
with  (document)  dot.gif {
InBlock.gifwrite(
"");
InBlock.gifwrite(
"");
InBlock.gifwrite(
"");
InBlock.gifwrite(
"");
InBlock.gifwrite(
" ");
InBlock.gif
for(i=1950;i<2030;i++)
InBlock.gif write(
""+i+"'>"+i+" 年");
InBlock.gifwrite(
"");
InBlock.gifwrite(
" ");
InBlock.gif
for (i=0; i<12; i++)
InBlock.gif write(
""+(i+1)+"'>"+gMonths[i]+"");
InBlock.gifwrite(
"");
InBlock.gif
InBlock.gif
InBlock.gif
InBlock.gifwrite(
" ' style='height:20;width:20' οnclick='fNextMonth()'>");
InBlock.gifwrite(
"");
InBlock.gifwrite(
"");
InBlock.gifwrite(
"");
InBlock.gifwrite(
"");
InBlock.giffDrawCal(giYear, giMonth, 
0, '0');
InBlock.gifwrite(
"
");
InBlock.gifwrite(
"");
InBlock.gifwrite(
"");
InBlock.gif
InBlock.gif
InBlock.gif
//
InBlock.gif
write(" ");
InBlock.gif
for(i=0;i<24;i++)
ExpandedSubBlockStart.gifContractedSubBlock.gif 
dot.gif{
InBlock.gif 
if(i<10)
ExpandedSubBlockStart.gifContractedSubBlock.gif 
dot.gif{
InBlock.gif  write(
""+i+"'>"+i+"");
ExpandedSubBlockEnd.gif }

InBlock.gif 
else
ExpandedSubBlockStart.gifContractedSubBlock.gif 
dot.gif{
InBlock.gif  write(
""+i+"'>"+i+"");
ExpandedSubBlockEnd.gif }

ExpandedSubBlockEnd.gif }

InBlock.gifwrite(
"");
InBlock.gif
InBlock.gifwrite(
" ");
InBlock.gif
for(i=0;i<60;i++)
InBlock.gif 
if(i<10)
ExpandedSubBlockStart.gifContractedSubBlock.gif 
dot.gif{
InBlock.gif  write(
""+i+"'>"+i+"");
ExpandedSubBlockEnd.gif }

InBlock.gif 
else
ExpandedSubBlockStart.gifContractedSubBlock.gif 
dot.gif{
InBlock.gif  write(
""+i+"'>"+i+"");
ExpandedSubBlockEnd.gif }

InBlock.gifwrite(
"");
InBlock.gif
InBlock.gifwrite(
" ");
InBlock.gif
for(i=0;i<60;i++)
InBlock.gif 
if(i<10)
ExpandedSubBlockStart.gifContractedSubBlock.gif 
dot.gif{
InBlock.gif  write(
""+i+"'>"+i+"");
ExpandedSubBlockEnd.gif }

InBlock.gif 
else
ExpandedSubBlockStart.gifContractedSubBlock.gif 
dot.gif{
InBlock.gif  write(
""+i+"'>"+i+"");
ExpandedSubBlockEnd.gif }

InBlock.gifwrite(
"");
InBlock.gif
//
InBlock.gif

InBlock.gif
InBlock.gifwrite(
"");
InBlock.gifwrite(
" 清空");  
InBlock.gif
//B style='cursor:hand'被替换为font size='2'
InBlock.gif
write("");
InBlock.gifwrite(
"今天: "+giYear+"-"+giMonth+"-"+giDay+"");
InBlock.gif
//B style='cursor:hand'被替换为font size='2'
InBlock.gif
write("");
InBlock.gifwrite(
"");
InBlock.gifwrite(
"
");
ExpandedBlockEnd.gif}

None.gif
None.gif
页面
None.gif
None.gif
< html >
None.gif
< head >
None.gif
< meta  http-equiv ="Content-Type"  content ="text/html; charset=gb2312" >
None.gif
< title > 日历下拉JS示例 title >
ExpandedBlockStart.gifContractedBlock.gif
< style  type ="text/css" > dot.gif
InBlock.gif
None.gif
style >
None.gif
head >
None.gif
None.gif
< body >
None.gif
None.gif
< body  bgcolor ="#D6D3CE" >
None.gif
ExpandedBlockStart.gifContractedBlock.gif
< script  language ="javascript"  src ="time.js" > dot.gif   //调用JS代码
None.gif
script >
None.gif
< div  align ="center" >
None.gif  
< center >
None.gif  
< table  width ="248"  border ="0" >
None.gif    
< tr >
None.gif      
< td  nowrap width ="599" >< span  class ="style1" > 选择时间 span > : < input  class ="input"  onclick ="fPopCalendar(this,this);return false"  type ="text"  name ="regdate"  size ="30" > td >
None.gif    
tr >
None.gif  
table >
None.gif  
center >
None.gif
div >
None.gif
None.gif
body >
None.gif
None.gif
body >
None.gif
html >
None.gif

转载于:https://www.cnblogs.com/genson/archive/2006/11/14/560271.html

你可能感兴趣的:(一段经典的日历下拉JS)