zoukankan      html  css  js  c++  java
  • ASP.NET(c#) 日期选择控件的另一种实现方法

    这篇文章是在一个英文网站发现的,完全使用ASP.NET实现了日期选择的基本功能,没有使用js,原文链接
    http://geekswithblogs.net/plundberg/archive/2009/03/24/asp.net-3.5ajaxnet-enabled-datepicker-snippet-using-the-aspcalendar-control.aspx

    英语不好,简单翻译了一下。


    ASP.NET 3.5/AJAX.NET --使用asp:Calendar控件实现日期选择功能
    您还在寻找一个使用AJAX.NET简单的日期选择控件实现您的日期选择功能吗?我也一直苦苦寻觅,但是最终还是自己写了一个(参照了其它人的代码)。

    实现此功能代码完全使用ASP.NET,没有使用javasrcipt,下面是主要代码,如果您需要在多处使用的话可以把它做成一个用户控件。

    在.asp文件中,代码如下:(我使用了自己的日历图标,您可以在这里修改为您自己的)。

     

    1. <asp:UpdatePanel ID="UpdatePanel1" runat="server">  
    2. <ContentTemplate>  
    3.         <asp:TextBox ID="requestedDeliveryDateTextBox" runat="server" Width="100" />  
    4.         <asp:ImageButton id="imageButton" runat="server" ImageUrl="~/Images/IconCalendar.png" AlternateText="calendar" OnClick="ImageButton_Click" CausesValidation="false" />  
    5.         <br />  
    6.         <div id="calendar" class="calendar" visible="false" runat="server">  
    7.         <asp:Calendar ID="requestedDeliveryDateCalendar" runat="server" OnSelectionChanged="RequestedDeliveryDateCalendar_SelectionChanged" />  
    8.         </div>  
    9. </ContentTemplate>  
    10. </asp:UpdatePanel>  

     

    后台主要代码如下:

     

    1. /// <summary>  
    2.        /// 日期选择图标被点击  
    3.         /// </summary>  
    4.        protected void ImageButton_Click(object sender, EventArgs eventArgs)  
    5.        {  
    6.            控制日历的显示与隐藏  
    7.            calendar.Visible = !calendar.Visible;  
    8.        }  
    9.   
    10.        /// <summary>  
    11.        /// 选择日期,通过AJAX触发  
    12.         /// </summary>  
    13.        protected void RequestedDeliveryDateCalendar_SelectionChanged(object sender, EventArgs eventArgs)  
    14.        {  
    15.          requestedDeliveryDateTextBox.Text = requestedDeliveryDateCalendar.SelectedDate.ToShortDateString();  
    16.   
    17.            // 隐藏日历  
    18.            calendar.Visible = false;  
    19.   
    20.            //设置日历下textbox的焦点,方便用户输入。移除或改变下行代码设置为您自己的控件  
    21.             someTextBox.Focus();  
    22.        }  

     

    效果如下:

  • 相关阅读:
    为了实现在线库的复杂查询,你还在双写吗?
    双11核心系统100%上云 !阿里数据库处理峰值远超传统厂商
    每秒8700万次!双11数据库峰值新纪录背后的关键力量
    最强CP!阿里云联手支付宝小程序如何助力双11?
    .net IAsyncResult 异步操作
    .net Reflection(反射)- 二
    .net Reflection(反射)- 一
    .net 空接合操作符 ??
    .net 基元类型,引用类型和值类型
    .net List<T>
  • 原文地址:https://www.cnblogs.com/xianyin05/p/3187326.html
Copyright © 2011-2022 走看看