ASP.NET AJAX Control Toolkit ValidatorCallout не работает при редактировании шаблона - PullRequest
1 голос
/ 15 сентября 2009

У меня есть страница со списком, который используется для вставки и редактирования записей. Назначение RequiredFieldValidator и ValidatorCallOutExtender для InsertItemTemplate работает хорошо.
Когда я пытаюсь сделать то же самое на EditItemTemplate, появляется ValidatorCallOut, но без текста в поле. Есть ли что-то, что я делаю не так?

Мой код для шаблона InsertItemTemplate:

 <asp:TextBox ID="date_timeTextBox" runat="server" Text='<%# Bind("date_time") %>' />
 <asp:RequiredFieldValidator 
      ControlToValidate="date_timeTextBox" 
      ID="RequiredFieldValidator1" 
      runat="server" 
      ErrorMessage="date_time is required" 
      Display="None" 
      ValidationGroup="insert_into">
 </asp:RequiredFieldValidator>
 <cc1:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" 
      runat="server" 
      TargetControlID="RequiredFieldValidator1">
 </cc1:ValidatorCalloutExtender>

А для EditItemTemplate:

<asp:TextBox 
    ID="date_timeTextBox" 
    runat="server" 
    Text='<%# Bind("date_time","{0:yyyy-MM-dd}") %>' />
<asp:RequiredFieldValidator 
    ControlToValidate="date_timeTextBox" 
    ID="reqDTT"       
    runat="server" 
    ErrorMessage="date_time is required" 
    Display="None" 
    ValidationGroup="edit_validate">
</asp:RequiredFieldValidator>
<cc1:ValidatorCalloutExtender 
    ID="val_reqDTT" 
    runat="server" 
    TargetControlID="reqDTT">
</cc1:ValidatorCalloutExtender>

1 Ответ

0 голосов
/ 16 сентября 2009

Убедитесь, что ваши идентификаторы уникальны среди ваших шаблонов, поэтому ControlToValidate = "date_timeTextBox" отличается.

InsertTemplate

 <asp:TextBox ID="date_timeTextBoxInsert" runat="server" Text='<%# Bind("date_time") %>' />

EditTemplate

 <asp:TextBox ID="date_timeTextBoxEdit" runat="server" Text='<%# Bind("date_time") %>' />
...