項目中遇見要用telerik的RadDatePicker日期控件,在網上搜索半天,發現都是英文的文檔。下面是我摸索出來的用法:
頁面頂部引入

<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
頁面中引入ajax的

1 <asp:ScriptManager ID="ScriptManager1" runat="server"> 2 </asp:ScriptManager>
然后把 telerik的RadDatePicker的html代碼放到UpdatePanel控件中

1 <asp:UpdatePanel ID="UpdatePanel1" runat="server"> 2 <ContentTemplate> 3 <telerik:RadDatePicker ID="RadStartDate" runat="server" MinDate="1900-01-01" MaxDate="2099-01-01"> 4 <DateInput DateFormat="yyyy-MM-dd" onclick="StartDate()"> 5 </DateInput> 6 </telerik:RadDatePicker> 7 <asp:Label ID="lbzhi" runat="server" Text="To"></asp:Label> 8 <telerik:RadDatePicker ID="RadEndDate" runat="server" MinDate="1900-01-01" MaxDate="2099-01-01"> 9 <DateInput DateFormat="yyyy-MM-dd" onclick="EndDate()"> 10 </DateInput> 11 </telerik:RadDatePicker> 12 </ContentTemplate> 13 </asp:UpdatePanel>
可以看到在上面的代碼中有onclick事件函數,下面我們分別寫StartDate()和EndDate() js腳本

1 <script language="javascript" type="text/javascript"> 2 function StartDate() { 3 $find('<%=RadStartDate.ClientID %>').showPopup(); 4 } 5 function EndDate() { 6 $find('<%=RadEndDate.ClientID %>').showPopup(); 7 } 8 </script>
注:通常我們要把上面的js放置到頁面的底部
后台代碼中可以設置:

1 this.RadStartDate.SelectedDate = DateTime.Now.AddMonths(-1); 2 this.RadEndDate.SelectedDate = DateTime.Now;

1 if (!this.RadStartDate.SelectedDate.HasValue) 2 { 3 MessageBox(Page, "初始時間不能為空"); 4 return; 5 } 6 if (!this.RadEndDate.SelectedDate.HasValue) 7 { 8 MessageBox(Page, "截止時間不能為空"); 9 return; 10 } 11 DateTime startDate; 12 if (!DateTime.TryParse(this.RadStartDate.SelectedDate.Value.ToString(), out startDate)) 13 { 14 MessageBox(Page, "初始時間格式不正確"); 15 return; 16 } 17 DateTime endDate; 18 if (!DateTime.TryParse(this.RadEndDate.SelectedDate.Value.ToString(), out endDate)) 19 { 20 MessageBox(Page, "截止時間格式不正確"); 21 return; 22 } 23 if (startDate > endDate) 24 { 25 MessageBox(Page, "初始時間不能大於截止時間"); 26 return; 27 }