0
我正在Asp.Net 1.1中開發一個網頁,並且有一個允許用戶添加,編輯和刪除數據庫記錄的DataGrid。頁腳行包含允許添加新記錄的文本框。如何控制在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>
我的問題是,當你嘗試編輯現有記錄,頁腳行中的空白字段防止驗證,因此回發和選定行的更新。
那麼您如何訪問驗證器呢?我沒有編程訪問它們。我可以通過Edit事件的參數訪問EditItemTemplate的驗證器,但我看不到如何獲得FooterItemTemplate驗證器。 – 2009-02-17 15:51:35