我有一堆带有EditItemTemplates的DetailsView。其中一个有一个接受日期的文本框。为了使表单更加用户友好,我想添加一个Ajax工具包日历控件,以便用户可以从日历中选择一个日期。我在尝试加载页面时遇到错误。
分析程序错误消息:未知的服务器标记'ajc:Calendar'。
我的注册标记是正确的。
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="ajc" %>
我的EditItemTemplate看起来像这样。没什么好看的。
<EditItemTemplate>
<asp:TextBox ID="txtGrantedDate" runat="server" Text='<%# Bind("GrantedDate") %>' />
<ajc:Calendar PopupPosition="Right" runat="server"
TargetControlID="txtGrantedDate"
Format="MMMM d, yyyy" SelectionMode="Day"
PopupButtonID="imgGrantedDate" ></ajc:Calendar>
<asp:Image ID="imgGrantedDate" runat="server" Width="20px" Height="20px" AlternateText="calendar" ImageUrl="~/Images/calendar.png" />
</EditItemTemplate>
我可能在哪里出错并且在DetailsView控件中甚至允许使用ajax控件?
答案 0 :(得分:4)
这太傻了。如果你们遇到这个问题,日历扩展器的正确服务器标签是
<ajc:CalendarExtender>
不
<ajc:Calendar>
你问的混淆的原因是什么?事实证明,Ajax控件工具包上的示例包含以下内容:
<ajaxToolkit:Calendar runat="server"
TargetControlID="Date1"
CssClass="ClassName"
Format="MMMM d, yyyy"
PopupButtonID="Image1" />
您可以自己查看:
Ajax Control Toolkit Calendar Extender
展开“日历属性”部分,您将看到我上面复制的代码。