Copy Code code as follows:
<! DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 transitional//en" "Http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
<meta http-equiv= "Content-type" content= "text/html; charset=gb2312 "/>
<title> Date Controls </title>
<script>
var agt = Navigator.userAgent.toLowerCase ();
var Oldtextbox;
function Dateseter (obj) {
var Parent=obj.parentnode;
var selyear=document.createelement (' SELECT ');
Selyear.id= ' Loftyyear ';
Parent.insertbefore (Selyear,obj);
var selmonth=document.createelement (' SELECT ');
Selmonth.id= ' Loftymonth ';
Parent.insertbefore (Selmonth,obj);
var selday=document.createelement (' SELECT ');
Selday.id= ' Loftyday ';
Parent.insertbefore (Selday,obj);
var btnsubmit=document.createelement (' BUTTON ');
Btnsubmit.style.width= ' 22px ';
Parent.insertbefore (Btnsubmit,obj);
Btnsubmit.id= ' loftybtn ';
For (s in btnsubmit)
{
document.write (s+ ' <br/> ');
}
Btnsubmit.textcontent= ' OK ';
Btnsubmit.value= ' OK ';
Al (Btnsubmit, ' click ', ' Restore () ');
Oldtextbox=obj;
Parent.removechild (obj);
var now=new Date ();
var cyear=now.getfullyear ();
Setcurrentyear (selyear,cyear);
Al (selyear, ' Change ', ' setcurrentyear (document.getElementById (\ ' loftyyear\ ')) ');
Al (Selmonth, ' Change ', ' Setday (null,null) ');
for (i=1;i<=12;i++)
{
var op=new Option (i,i);
SelMonth.options.add (OP);
}
var cmonth=now.getmonth () +1;
Setday (Cyear,cmonth);
Selday.selectedindex=now.getdate ()-1;
}
function Restore ()
{
var Yy=document.getelementbyid (' Loftyyear ');
var Mm=document.getelementbyid (' Loftymonth ');
var D=document.getelementbyid (' Loftyday ');
var Btn=document.getelementbyid (' loftybtn ');
var time=yy.options[yy.selectedindex].value+ '-' +mm.options[mm.selectedindex].value+ '-' +d.options[ D.selectedindex].value;
Oldtextbox.value=time;
var Parent=yy.parentnode;
Parent.insertbefore (OLDTEXTBOX,YY);
Parent.removechild (yy);
Parent.removechild (mm);
Parent.removechild (d);
Parent.removechild (BTN);
}
function Setday (year,month)
{
if (year==null) {
var Yy=document.getelementbyid (' Loftyyear ');
var Mm=document.getelementbyid (' Loftymonth ');
Year=math.round (Yy.options[yy.selectedindex].value);
Month=math.round (Mm.options[mm.selectedindex].value);
}
var date=new date (year,month,1);
Date.setdate (0);
var maxdate=date.getdate ();
var Obj=document.getelementbyid (' Loftyday ');
var Seldate=obj.selectedindex;
if (obj.options.length>0) {
if (Math.Round (obj.options[obj.selectedindex].value) >maxdate)
{
seldate=maxdate-1;
}
}
Reappendselect (obj,1,maxdate,seldate+1);
}
function Setcurrentyear (selecter,curryear)
{
if (curryear==null) {
Curryear=math.round (Selecter.options[selecter.selectedindex].value);
}
Reappendselect (selecter,curryear-10,curryear+10,curryear);
}
function Reappendselect (selecter,startindex,endindex,selindex)
{
while (selecter.options.length>0)
{
Selecter.removechild (Selecter.options[selecter.options.length-1]);
}
for (i=startindex;i<=endindex;i++)
{
var op=new Option (i,i);
Selecter.options.add (OP);
Op.selected= (selindex==i);
}
}
Function Al (Obj,lissener,func) {
if (Agt.indexof (' Firefox ')!=-1) {
Obj.addeventlistener (Lissener,function () {eval (func);},false);
}else{
Obj.attachevent (' on ' +lissener,function () {eval (func);});
}
}
</script>
<body>
<input onclick= "Dateseter (this);"/>
</body>
Streamlining only Year:
Copy Code code as follows:
<! DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 transitional//en" "Http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
<meta http-equiv= "Content-type" content= "text/html; charset=gb2312 "/>
<title> Date Controls </title>
<script>
var agt = Navigator.userAgent.toLowerCase ();
var Oldtextbox;
function Dateseter (obj) {
var Parent=obj.parentnode;
var selyear=document.createelement (' SELECT ');
Selyear.id= ' Loftyyear ';
Parent.insertbefore (Selyear,obj);
/*
var btnsubmit=document.createelement (' BUTTON ');
Btnsubmit.style.width= ' 32px ';
Parent.insertbefore (Btnsubmit,obj);
Btnsubmit.id= ' loftybtn ';
Btnsubmit.textcontent= ' OK ';
Btnsubmit.value= ' OK ';
Al (Btnsubmit, ' click ', ' Restore () ');
*/
Oldtextbox=obj;
Parent.removechild (obj);
var defaultvalue = Obj.value;
var now=new Date ();
var cyear=now.getfullyear ();
Setcurrentyear (Selyear,cyear,defaultvalue);
Al (selyear, ' Change ', ' Restore (obj) ');
}
function Restore ()
{
Oldtextbox.value = Arguments[0].value;
var Yy=document.getelementbyid (' Loftyyear ');
var Parent=yy.parentnode;
Parent.insertbefore (OLDTEXTBOX,YY);
Parent.removechild (yy);
/*
var Yy=document.getelementbyid (' Loftyyear ');
var Btn=document.getelementbyid (' loftybtn ');
var Time=yy.options[yy.selectedindex].value;
Oldtextbox.value=time;
var Parent=yy.parentnode;
Parent.insertbefore (OLDTEXTBOX,YY);
Parent.removechild (yy);
Parent.removechild (BTN);
*/
}
function Setcurrentyear (selecter,curryear)
{
if (curryear==null) {
Curryear=math.round (Selecter.options[selecter.selectedindex].value);
}
var dv = arguments[2];
Reappendselect (SELECTER,1901,2001,CURRYEAR,DV);
}
function Reappendselect (selecter,startindex,endindex,selindex)
{
while (selecter.options.length>0)
{
Selecter.removechild (Selecter.options[selecter.options.length-1]);
}
for (i=startindex;i<=endindex;i++)
{
var op=new Option (i,i);
Selecter.options.add (OP);
if (arguments[4]!= "") {
if (I==arguments[4])
Op.selected=true;
}else{
if (I==endindex)
Op.selected=true;
}
}
}
Function Al (Obj,lissener,func) {
if (Agt.indexof (' Firefox ')!=-1) {
Obj.addeventlistener (Lissener,function () {eval (func);},false);
}else{
Obj.attachevent (' on ' +lissener,function () {eval (func);});
}
}
</script>
<body>
<input onclick= "Dateseter (this);"/>
</body>