我有一个 GridView,其中有一个 TextField 列。我已经为这个 TextField 列设置了验证,因此它需要一个输入(即它不是可选的),并且输入只能是一个正整数。
当文本字段为空或没有正整数值时,错误确实会显示出来,但是有一个服务器端按钮,即使 GridView 中存在错误,它仍然会执行。
如果有输入错误,我希望按钮不进行处理.. 目前这不会发生,因为即使有错误,仍然会调用按钮的点击事件..
GridView 标记代码:
<asp:GridView ID="EPSAndTSRValuesInputGridView" runat="server" ShowFooter="true"
AutoGenerateColumns="false">
<Columns>
<asp:TemplateField HeaderText="EPS Value">
<ItemTemplate>
<asp:TextBox ID="EPSValue" Text='<%# Eval("EPSValue") %>' runat="server" CausesValidation="True" ValidationGroup="Display"></asp:TextBox>
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ErrorMessage="Enter a valid value for EPS!"
ValidationExpression="^\d*$" ControlToValidate="EPSValue" ValidationGroup="Display"/>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="*"
ControlToValidate="EPSValue" ValidationGroup="Display"/>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
执行下一个动作的按钮:
<asp:Button ID="btnDisplayReport2"
runat="server" CssClass="ButtonStyle"
Text="Display Report" ValidationGroup="Display" OnClick="btnDisplayReport2_Click" CausesValidation="true"/>