4

我有一个页面,顶部包含一个表单,用于将新记录添加到 table1 中,下面是一个 GridView,它显示 table1 中的记录并具有编辑能力。

现在上面的表格只是一个文本框,允许您在 table1 中输入名称,这个文本框有一个必填字段验证器。验证器会导致问题,但是当 gridview 处于编辑模式时,因为当用户按下“更新”时,不会保存任何内容,因为验证器是触发器(因为上面的表单中没有任何内容)

我怎样才能解决这个问题?

4

3 回答 3

4

你必须把 CausesValidation="False" 在 GridView

<Columns>
<asp:CommandField ShowDeleteButton="True" ShowEditButton="True" CausesValidation="False"/>
于 2016-09-14T18:22:25.110 回答
3

您可以设置RequiredFieldValidator 控件和Add 按钮具有相同的ValidationGroup 名称。像这样的东西:

<asp:Button ID="btnAdd" runat="server" OnClick="btnAdd_Click" ValidationGroup="addValidation" />
<asp:RequiredFieldValidator ID="nameRequired" ControlToValidate="txtName" runat="server" ValidationGroup="addValidation"></asp:RequiredFieldValidator>
...
<asp:Button ID="btnUpdate" runat="server" OnClick="btnUpdate_Click" />

因此,更新按钮不会受到影响。

于 2013-01-14T02:00:59.790 回答
0

在 gridview 按钮中使用原因验证为 false。

<asp:Button ID="Button2" runat="server" 
     CausesValidation="False" 
     Text="Cancel - Will Not Validate!" />

这是一个例子:

http://www.java2s.com/Code/ASP/Asp-Control/CausesValidationFalse.htm

于 2013-01-14T04:42:48.200 回答