Asp.net regularexpressionvalidator即使在CausesValidation=";假;

Asp.net regularexpressionvalidator即使在CausesValidation=";假;,asp.net,Asp.net,我有一个regularexpression验证器,用于验证有效的电子邮件。我的表格上有两个按钮。提交和撤消 在撤消时,我们将页面状态恢复为默认状态 submit设置了它的validationgroup,而undo没有任何validationgroup并导致Validation=“false” 现在,当我导航到页面并输入无效的电子邮件地址时,我直接单击“撤消”。验证程序启动并停止我的页面发布。但是,如果我按tab键并导航到其他控件,然后单击“撤消”,验证程序将显示错误消息,但会发回,并完成进一步的

我有一个regularexpression验证器,用于验证有效的电子邮件。我的表格上有两个按钮。提交和撤消

在撤消时,我们将页面状态恢复为默认状态

submit设置了它的validationgroup,而undo没有任何validationgroup并导致Validation=“false”

现在,当我导航到页面并输入无效的电子邮件地址时,我直接单击“撤消”。验证程序启动并停止我的页面发布。但是,如果我按tab键并导航到其他控件,然后单击“撤消”,验证程序将显示错误消息,但会发回,并完成进一步的处理

这很奇怪,我希望当我单击“撤消”时,页面能够在没有任何错误消息的情况下回发。如何实现它

<tec:ThemedImageButton runat="server" ID="imgbtnSave" OnClick="imgbtnSave_Click"
     ValidationGroup="CustomerGroup"/>
<tec:ThemedImageButton runat="server" ID="imgbtnCancel" CausesValidation="false"
                                                OnClick="imgbtnCancel_Click" />


这些是添加了主题的普通图像按钮。CustomerGroup是my textbox和regularexpressionvalidator的验证组。当您的焦点仍在电子邮件文本框内时,是否可能单击撤消?如果是这样的话,可能问题在于文本框的初始模糊事件正在触发,这反过来会调用电子邮件验证程序并阻止单击/提交


要尝试的第一件事是确保您可以输入无效的电子邮件地址,将焦点移动到页面的完全不同的区域,然后按“撤消”确定这是否是原因。

您是否可能在焦点仍在电子邮件文本框中时单击“撤消”?如果是这样的话,可能问题在于文本框的初始模糊事件正在触发,这反过来会调用电子邮件验证程序并阻止单击/提交


要尝试的第一件事是确保您可以输入无效的电子邮件地址,将焦点移动到页面的完全不同的区域,然后按“撤消”以确定这是否是原因。

仔细检查您的设置。
您可能需要检查代码以确保没有覆盖那里的控件设置。例如,在代码中,您可能将CausesValidation设置为“True”或类似的值

仔细检查您的设置。
您可能需要检查代码以确保没有覆盖那里的控件设置。例如,在代码中,您可能将CausesValidation设置为“True”或类似的值

在发布更多信息之前,您可以在“撤消”按钮中执行以下操作:

<asp:Button ID="btnUndo" runat="server" Text="Undo"
    OnClientClick="Page_ValidationActive = false;"
    OnClick="btnUndo_Click" />


我不建议这样做,因为它可能会解决您的问题,但实际上并不能解释什么连接不正确,但
页面\u ValidationActive=false将禁用页面上的所有客户端验证。

在发布更多信息之前,您可以在“撤消”按钮中执行以下操作:

<asp:Button ID="btnUndo" runat="server" Text="Undo"
    OnClientClick="Page_ValidationActive = false;"
    OnClick="btnUndo_Click" />


我不建议这样做,因为它可能会解决您的问题,但实际上并不能解释什么连接不正确,但
页面\u ValidationActive=false
将禁用页面上的所有客户端验证。

您可以为2个按钮和验证程序发布代码吗?同时发布您正在使用的ASP.NET版本。第二,更多信息将在此处提供帮助。您是否在按钮上设置了验证组,即验证程序,文本框和验证摘要是否相同?您是否可以发布您的验证程序,以便我们可以看到它正确连接到
textbox
,并且
ValidationGroup
也已设置。您是否可以发布两个按钮和验证程序的代码?同时发布您正在使用的ASP.NET版本。第二,更多信息将在此处提供帮助。您是否在按钮上设置了验证组,即验证程序,文本框和验证摘要是一样的吗?你能发布你的验证程序吗?这样我们就可以看到它正确地连接到
文本框
,并且
验证组
也被设置好了。我试过在onclientclick上粘贴javascript函数,但它不会触发。但是如果我第二次按下按钮,感谢Kelsey,我遇到了类似的问题:我在一个电子邮件文本框中检查javascript onblur事件的验证,但是一旦验证在这个文本框中返回false,我需要单击两次取消按钮。。。“Page_ValidationActive=false;”解决此问题。我曾尝试在onclientclick上粘贴javascript函数,但未触发。但是,如果我第二次按下按钮,javascript将触发。感谢Kelsey,我遇到了类似的问题:我在电子邮件文本框上检查javascript onblur事件的验证,但一旦验证在此文本框上返回false,我需要点击两次取消按钮。。。“Page_ValidationActive=false;”解决它。