2010-01-28 39 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工作。它应该关闭选取器,如果你点击它之外。

作为一种最佳实践,我们总是使用日历图标弹出选取器,而不是单击文本框时。有些用户喜欢在每次点击文本框时意外输入日期并弹出拾取器。

相关问题