javascript(js)动态添加日期时间下拉框菜单

    技术2022-05-19  24

    javascript源码:<script type="text/javascript" language="javascript" >                                     var agt = navigator.userAgent.toLowerCase();                                                                         window.onload = function()                                    {                                        DateSeter();                                                                           }                                     function DateSeter(){                                             var selYear= document.getElementById("LoftyYear");                                          var selMonth=document.getElementById("LoftyMonth");                                         var selDay=document.getElementById("LoftyDay");                                        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 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>

    页面源码:<select name="select" id="LoftyYear" >                        </select><asp:HiddenField ID="HiddenField2" runat="server" />                        年                        <select name="select2" id="LoftyMonth">                        </select>                        月                        <select name="select3" id="LoftyDay">                        </select>                        日

    这里必须用HTML标签!

    后置代码获取值的方法:

    function SetValue()                                {                                    var LoftyYear = document.getElementById("LoftyYear");                                    var LoftyMonth = document.getElementById("LoftyMonth");                                    var LoftyDay = document.getElementById("LoftyDay");                                                                        var hid2 = document.getElementById("<%=HiddenField2.ClientID %>");                                                                            for(i=0;i<LoftyYear.length;i++)                                        {                                            if(LoftyYear[i].selected==true)                                            {                                                var value1 = LoftyYear[i].innerText;                                                hid2.value = value1;                                            }                                        }                                        for(i=0;i<LoftyMonth.length;i++)                                        {                                            if(LoftyMonth[i].selected==true)                                            {                                                var value1 = LoftyMonth[i].innerText;                                                hid2.value += "-" + value1;                                            }                                        }                                        for(i=0;i<LoftyDay.length;i++)                                        {                                            if(LoftyDay[i].selected==true)                                            {                                                var value1 = LoftyDay[i].innerText;                                                hid2.value += "-" + value1;                                            }                                        }                                                                       }


    最新回复(0)