2

我有一个带有一堆 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 控件?

4

1 回答 1

4

好吧,这很愚蠢。如果你们遇到这个问题,日历扩展器的正确服务器标签是

<ajc:CalendarExtender> 

不是

<ajc:Calendar>

你问的困惑的原因是什么?事实证明,Ajax 控件工具包上的示例包含以下内容:

<ajaxToolkit:Calendar runat="server"
    TargetControlID="Date1"
    CssClass="ClassName"
    Format="MMMM d, yyyy"
    PopupButtonID="Image1" />

您可以在以下位置亲自查看:

Ajax 控制工具包日历扩展器

展开日历属性部分,您将看到我在上面复制的代码。

于 2011-12-14T14:47:14.647 回答