默认情况下关闭asp验证

时间:2009-10-28 09:53:17

标签: asp.net validation

我在我的页面上使用asp:requiredfieldvalidator。关闭控件的常用方法是设置

CausesValidation="false"

然而,我有更多按钮,我不想导致验证,而不是我想要验证。

所以我的想法是,默认情况下关闭它会更容易,当我需要时关闭但我不知道如何。

提前致谢

2 个答案:

答案 0 :(得分:1)

我认为默认情况下你不能关闭它,但你可以在你想要导致验证的按钮和它们应该验证的控件上设置ValidationGroup属性。

代码示例:

<asp:TextBox ID="tb1" runat="server" ValidationGroup="ValidateMe" />
<asp:TextBox ID="tb2" runat="server" />
<asp:RequiredFieldValidator" ID="rfv1" runat="server" ControlToValidate="tb1" ValidationGroup="ValidateMe" />
...
<asp:Button ID="btnSubmit" runat="server" ValidationGroup="ValidateMe" />

单击btnSubmit时,无论应用于tb2的任何其他验证控件如何,都只会验证tb1。

答案 1 :(得分:0)

在您的标记中,您可以设置Enabled标记(我要说的是更明确的关闭方法,而不是使用CausesValidation):

<asp:requiredfieldvalidator Enabled="false" id="rfv1" ControlToValidate="whatever" />

然后使用以下命令在代码隐藏中选择性地启用它:

rfv1.Enabled = True

如果要在启用验证程序时单击按钮,则会出现CausesValidation。启用验证程序后,<asp:button id="btnSubmit" Text="Submit" />将无效,但无论验证程序的状态如何,仍然可以单击<asp:button id="UnvalidatedButton" Text="Toggle Validation State" CausesValidation="false" />