2010-01-28 76 views
1

我試圖在用戶單擊頁面上的任何位置時關閉日曆。我已下載該工具包的最新版本,但無法使用此功能。我不確定我是否缺少一個屬性,但功能在asp.net示例工具包頁面上按預期工作。Ajax Control Toolkit CalendarExtender在單擊表單體時未關閉

下面是代碼:

<asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server"> 
</asp:ToolkitScriptManager> 


<asp:TextBox ID="txtTest" runat="server" /><img runat="server" alt="Calendar" id="imgCalFrom" align="absmiddle" border="0" height="16" src="/global/images/glo_btn_cal.gif" width="21"/> 
    <asp:CalendarExtender ID="CalendarExtender1" runat="server" TargetControlID="txtTest" PopupButtonID="imgCalFrom"> 
    </asp:CalendarExtender> 

回答

0

取下擴展的PopupButtonID = 「imgCalFrom」。這應該解決它。這個PopupButtonID分配一個按鈕回調。您必須再次單擊圖像或選擇日期才能關閉日曆。

+0

正確,但是如果您鬆開了讓用戶單擊按鈕顯示日曆的功能。 所以問題是,我如何有一個與文本框關聯的日曆圖標,點擊時會顯示日曆,但當頁面的任何其他部分被點擊時,日曆會再次隱藏。 – TampaRich 2010-01-28 22:09:08

+1

如果對PopupButtonID使用標記,請改爲使用ImageButton而不是以下方式 madatanic 2010-02-01 18:40:14

+0

然後你失去了讓按鈕觸發事件來顯示日曆的功能。 – TampaRich 2010-02-04 14:39:59

2

請勿使用<img .,. />。改爲使用<input type="image" .../>。或者你可以使用<asp:ImageButton runat="Server" .../>。這將解決您的問題。

+0

這兩個標籤有什麼區別?爲什麼通過將標籤更改爲imagaButton來改變功能? – 2012-07-10 06:13:34

+0

這適用於我。謝謝。 – BigMan 2014-03-27 08:11:44

2

工具包中存在一些問題,使其無法與asp:Image一起工作,但按預期使用asp:ImageButton工作。它應該關閉選取器,如果你點擊它之外。

作爲一種最佳實踐,我們總是使用日曆圖標彈出選取器,而不是單擊文本框時。有些用戶喜歡在每次點擊文本框時意外輸入日期並彈出拾取器。