Asp.Net 1.1でWebページを開発していて、ユーザーがデータベースレコードを追加、編集、および削除できるDataGridを持っています。フッター行には、新しいレコードを追加できるようにするテキストボックスが含まれています。
各列に対して、<ItemTemplate>、<EditItemTemplate>、および<FooterItemTemplate>要素を定義しました。aspxマークアップのFooterItemTemplate要素とEditItemTemplate要素の両方に、RequiredFieldValidatorコントロールとテキストボックスが含まれています。(下記参照)
<asp:TemplateColumn HeaderText="Offer Code">
<ItemTemplate>
<%# DataBinder.Eval(Container, "DataItem.OfferCode") %>
</ItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtNewOfferCode" Runat="server" />
<asp:RequiredFieldValidator ID="reqNewOfferCode" ControlToValidate="txtNewOfferCode" Display="None" ErrorMessage="Please specify 'Offer Code'" Runat="server" />
</FooterTemplate>
<EditItemTemplate>
<asp:TextBox id=txtOfferCode Runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.OfferCode") %>' />
<asp:RequiredFieldValidator ID="reqOfferCode" ControlToValidate="txtOfferCode" Display="None" ErrorMessage="Please specify 'Offer Code'" Runat="server" />
</EditItemTemplate>
</asp:TemplateColumn>
私が抱えている問題は、既存のレコードを編集しようとすると、フッター行の空白のフィールドが検証を妨げ、選択した行のポストバックと更新を妨げることです。