在insertitemtemplate或edititemtemplate of detailsView中进行验证

时间:2014-01-01 06:56:06

标签: c# asp.net

我的问题是每当我将验证控件放入 detailsView insertitemtemplate OR edititemtemplate 字段进行验证时,验证和回发都不会发生。在这种情况下,当我将鼠标悬停在插入链接上时,它会说 postbackwithoption 但是当我点击链接时,没有任何反应

如果我删除验证控件后发生。在这种情况下,当我将鼠标悬停在插入链接上时,它会说回发

我花了很多时间在google上找到以下解决方案,但没有任何方法可以帮助我

1.将插入链接的原因验证设置为false

2.设置控件的Groupvalidation并插入链接

我在asp.net中使用visual studio 2012和newbie

由于

<asp:DetailsView ID="DetailsView1" runat="server" AutoGenerateRows="False" DataKeyNames="Id" DataSourceID="SqlDataSource1" DefaultMode="Insert" Height="50px" Width="125px" OnItemInserted="DetailsView1_ItemInserted" OnItemInserting="DetailsView1_ItemInserting" OnItemUpdated="DetailsView1_ItemUpdated" OnItemUpdating="DetailsView1_ItemUpdating">
<Fields>
  <asp:BoundField DataField="Id" HeaderText="Id" InsertVisible="False" ReadOnly="True" SortExpression="Id" />
  <asp:TemplateField HeaderText="Title" SortExpression="Title">
    <EditItemTemplate>
      <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Title") %>'></asp:TextBox>
      <asp:RequiredFieldValidator ErrorMessage="Enter a title" ControlToValidate="TextBox1" runat="server" />
    </EditItemTemplate>
    <InsertItemTemplate>
      <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Title") %>'></asp:TextBox>
      <asp:RequiredFieldValidator ErrorMessage="Enter a title" ControlToValidate="TextBox1" runat="server" />
    </InsertItemTemplate>
    <ItemTemplate>
      <asp:Label ID="Label1" runat="server" Text='<%# Bind("Title") %>'></asp:Label>
    </ItemTemplate>
  </asp:TemplateField>
  <asp:TemplateField HeaderText="Summary" SortExpression="Summary">
    <EditItemTemplate>
      <asp:TextBox ID="TextBox2" TextMode="MultiLine" Width="500" Height="100" runat="server" Text='<%# Bind("Summary") %>'></asp:TextBox>
      <asp:RequiredFieldValidator ErrorMessage="Enter a summary" ControlToValidate="TextBox2" runat="server" />
    </EditItemTemplate>
    <InsertItemTemplate>
      <asp:TextBox ID="TextBox2" TextMode="MultiLine" Width="500" Height="100" runat="server" Text='<%# Bind("Summary") %>'></asp:TextBox>
      <asp:RequiredFieldValidator ErrorMessage="Enter a summary" ControlToValidate="TextBox2" runat="server" />
    </InsertItemTemplate>
    <ItemTemplate>
      <asp:Label ID="Label2" runat="server" Text='<%# Bind("Summary") %>'></asp:Label>
    </ItemTemplate>
  </asp:TemplateField>
      </Fields>

0 个答案:

没有答案