日期控制項源碼

來源:互聯網
上載者:User
一個日期控制項源碼!大家可以參考一下!
<br /> 下拉的選擇日期控制項(user control )<br /> YearMonthDayDownDropList.ascx:<br /> <%@ Control Language="c#" AutoEventWireup="false"<br /> Codebehind="YearMonthDayDownDropList.ascx.cs"<br /> Inherits="micrm.Modules.YearMonthDayDownDropList"<br /> TargetSchema="http://schemas.microsoft.com/intellisense/ie5"%><br /> <table id="Table1" cellSpacing="0" cellPadding="0"><br /> <tr><br /> <td><SELECT id=<%=YearName%><br /> onclick=<%=javascriptFunName%><br /> style="WIDTH: 53px; HEIGHT: 61px" name=<%=YearName%>><br /> <%<br /> FillOptions(2000,ServerNowYear,ServerYear);%><br /> </SELECT><br /> <td><br /> <DIV>年</DIV><br /> </td><br /> <td><SELECT id=<%=MonthName%> style="WIDTH: 45px;<br /> HEIGHT:<br /> 61px" onclick=<%=javascriptFunName%><br />name=<%=MonthName%>><br /> <%<br /> FillOptions(1,12,ServerMonth);%><br /> </SELECT><br /> <td><br /> <DIV>月</DIV><br /> </td><br /> <td><SELECT id=<%=DayName%> style="WIDTH: 45px; HEIGHT:<br /> 61px" name=<%=DayName%>><br /> <%<br /> FillOptions(1,ServerMonthDays,ServerDay); %><br /> </SELECT></td><br /> <td><br /> <DIV>日</DIV><br /> </td><br /> </tr><br /> </table></p><p> 在YearMonthDayDownDropList.ascx.cs中:<br /> namespace micrm.Modules<br /> {<br /> using System;<br /> using System.Data;<br /> using System.Drawing;<br /> using System.Web;<br /> using System.Web.UI.WebControls;<br /> using System.Web.UI.HtmlControls;<br /> /// <summary><br /> /// YearMonthDayDownDropList 的摘要說明。<br /> /// </summary><br /> public abstract class YearMonthDayDownDropList :<br /> System.Web.UI.UserControl<br /> {<br /> //選擇的年月日如:20021225<br /> public string YearMonthDay<br /> {<br /> get<br /> {<br /> return<br /> Request.Form[YearName]+Request.Form[MonthName]+Request.Form[DayName];<br /> }<br /> }<br /> protected int ServerYear; //伺服器當前選擇年<br /> protected int ServerMonth;//伺服器當前月<br /> protected int ServerNowYear; //伺服器當前年<br /> protected int ServerDay; //伺服器當前天<br /> protected int ServerMonthDays;//當前月天數<br /> protected string javascriptFunName; //此user<br /> control發出的函數名稱<br /> protected string YearName; //此user control發出的年控制項的名稱<br /> protected string MonthName;//此user control發出的月控制項的名稱<br /> protected string DayName; //此user control發出的日控制項的名稱<br /> private void Page_Load(object sender, System.EventArgs<br />e)<br /> {<br /> // 在此處放置使用者代碼以初始化頁面<br /> string id= this.UniqueID;<br /> if(!this.Page.IsClientScriptBlockRegistered(id))<br /> {<br /> javascriptFunName="chanday"+id+"()";<br /> YearName="year"+id;<br /> MonthName="month"+id;<br /> DayName="day"+id;<br /> string scriptString ="<script language=javascript>";<br /> scriptString=scriptString+"function "+javascriptFunName;<br /> scriptString=scriptString+ "{ var days;";<br /> scriptString=scriptString+" var currentyear;";<br /> scriptString=scriptString +"days=31;";<br /> scriptString=scriptString+"<br /> if(window.document.forms[0]."+MonthName+".value==04||window.document.forms[0]."+MonthName+".value==06||window.document.forms[0]."+MonthName+".value==09||window.document.forms[0]."+MonthName+".value==11)";<br /> scriptString=scriptString+" days=30;";<br /> scriptString=scriptString+"else<br /> if(window.document.forms[0]."+MonthName+".value==02) {";<br /> scriptString=scriptString+"Nowyear=window.document.forms[0]."+YearName+".value<br /> ;";<br /> scriptString=scriptString+ " if((Nowyear%4==0<br /> &&Nowyear%100!=0) || Nowyear%400==0)";<br /> scriptString=scriptString+" days=29;";<br /> scriptString=scriptString+" else days=28;";<br /> scriptString=scriptString+" }";<br /> scriptString=scriptString+ "<br /> flen=window.document.forms[0]."+DayName+".length ;";<br /> scriptString=scriptString+"<br /> window.document.forms[0]."+DayName+".length =days;";<br /> scriptString=scriptString+ " i=flen+1;";<br /> scriptString=scriptString+"for(i;i<=days;i++)";<br /> scriptString=scriptString+"{";<br /> scriptString=scriptString+"<br /> window.document.forms[0]."+DayName+".options(i-1).text=i;";<br /> scriptString=scriptString+"<br /> window.document.forms[0]."+DayName+".options(i-1).value=i;";<br /> scriptString=scriptString+" }";<br /> scriptString=scriptString+"}";<br /> scriptString=scriptString+"</script>";<br /> this.Page.RegisterClientScriptBlock(id, scriptString);<br /> }<br /> DateTime now=DateTime.Today;<br /> ServerNowYear =now.Year ;<br /> if(!Page.IsPostBack)<br /> {<br /> ServerYear=ServerNowYear ;<br /> ServerMonth=now.Month;<br /> ServerDay=now.Day;<br /> ServerMonthDays=GetNowMonthDays(ServerYear,ServerMonth);<br /> }<br /> else<br /> {<br /> ServerYear=Convert.ToInt32(Request.Form[YearName]);<br /> ServerMonth=Convert.ToInt32(Request.Form[MonthName]);<br /> ServerDay= Convert.ToInt32(Request.Form[DayName]);<br /> ServerMonthDays=GetNowMonthDays(ServerYear,ServerMonth);<br /> }<br /> }<br /> private int GetNowMonthDays(int ServerYear,int<br /> ServerMonth)<br /> {<br /> int ServerMonthDays=31;<br /> if(ServerMonth==4||ServerMonth==6||ServerMonth==9||ServerMonth==11)<br /> ServerMonthDays=30;<br /> else if(ServerMonth==02)<br /> {<br /> if((ServerYear%4==0 &&ServerYear%100!=0) ||<br /> ServerYear%400==0)<br /> ServerMonthDays=29;<br /> else ServerMonthDays=28;<br /> }<br /> return ServerMonthDays;<br /> }<br /> protected void FillOptions(int StartValue,int<br /> OptionsLength,int SelectedOption)<br /> {<br /> for(int j=StartValue;j<=OptionsLength;j++)<br /> {<br /> string ShowOption;<br /> if(j<10)<br /> ShowOption="0"+j.ToString();<br /> else ShowOption=j.ToString();<br /> if(j==SelectedOption)<br /> Response.Write(" <OPTION value="+ShowOption+"<br /> selected>"+ShowOption+"</OPTION>");<br /> else Response.Write(" <OPTION value="+ShowOption+"<br /> >"+ShowOption+"</OPTION>");<br /> }<br /> }<br /> #region Web Form Designer generated code<br /> override protected void OnInit(EventArgs e)<br /> {<br /> //<br /> // CODEGEN:該調用是 ASP.NET Web Form設計器所必需的。<br /> //<br /> InitializeComponent();<br /> base.OnInit(e);<br /> }<br /> /// 設計器支援所需的方法 - 不要使用<br /> /// 代碼編輯器修改此方法的內容。<br /> /// </summary><br /> private void InitializeComponent()<br /> {<br /> this.Load += new System.EventHandler(this.Page_Load);<br /> }<br /> #endregion<br /> }<br /> }</p><p>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.