Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 单击按钮时使用ValidationGroup进行验证_C#_Asp.net_Validation_Code Behind - Fatal编程技术网

C# 单击按钮时使用ValidationGroup进行验证

C# 单击按钮时使用ValidationGroup进行验证,c#,asp.net,validation,code-behind,C#,Asp.net,Validation,Code Behind,我试图为我的按钮编写代码,在向导中单击下一个按钮时检查“信息组”中的验证控件 单击“下一步”按钮时,它将转到向导中的下一步,跳过验证控件。如果所需字段为空或具有无效值,则不应继续,但确实如此。在我将它们添加到validationGroup之前,我已经完成了这项工作,但是我需要使用validationGroup,因为我需要执行客户端验证和服务器端验证(当单击按钮时)。下面是我的验证代码和单击“下一步”按钮时的隐藏代码: <tr> <td><asp:Label

我试图为我的按钮编写代码,在向导中单击下一个按钮时检查“信息组”中的验证控件

单击“下一步”按钮时,它将转到向导中的下一步,跳过验证控件。如果所需字段为空或具有无效值,则不应继续,但确实如此。在我将它们添加到validationGroup之前,我已经完成了这项工作,但是我需要使用validationGroup,因为我需要执行客户端验证和服务器端验证(当单击按钮时)。下面是我的验证代码和单击“下一步”按钮时的隐藏代码:

<tr>
    <td><asp:Label ID="LabelName" runat="server" Text="Name:"  CssClass="LabelText"></asp:Label></td>
    <td><asp:TextBox ID="TextBoxName" runat="server"  CssClass="TextBox" TextMode="SingleLine"></asp:TextBox></td>
    <td>
        <asp:RequiredFieldValidator ID="nameRequiredFieldValidator" runat="server" ErrorMessage="Please enter your name."
        CssClass="errorMessage"
        ControlToValidate="TextBoxName"
        Text="*"
        SetFocusOnError="true"
        Display="Dynamic"
        ValidationGroup="infoGroup"></asp:RequiredFieldValidator>
      <asp:RegularExpressionValidator ID="nameRegularExpressionValidator" runat="server" ErrorMessage="Please enter a valid name."
        ControlToValidate="TextBoxName"
        ValidationExpression="[a-zA-Z\.\'\-_\s]{1,40}"
        Text="*"
        CssClass="errorMessage"
        SetFocusOnError="true"
        Display="Dynamic"
        ValidationGroup="infoGroup"></asp:RegularExpressionValidator>
    </td>
</tr>
<tr>
    <td><asp:Label ID="LabelEmail" runat="server" Text="E-mail:"  CssClass="LabelText"></asp:Label></td>
    <td><asp:TextBox ID="TextBoxEmail" runat="server"  CssClass="TextBox"></asp:TextBox></td>
    <td>
        <asp:RequiredFieldValidator ID="emailRequiredFieldValidator"  runat="server" ErrorMessage="Please enter your email address."
                      CssClass="errorMessage"
                      ControlToValidate="TextBoxEmail"
                      Text="*"
                      SetFocusOnError="true"
                      Display="Dynamic"
                      ValidationGroup="infoGroup"></asp:RequiredFieldValidator>
        <asp:RegularExpressionValidator ID="emailRegularExpressionValidator" runat="server" ErrorMessage="Please enter a valid email address."
                      ControlToValidate="TextBoxEmail"
                      ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"
                      Text="*"
                      CssClass="errorMessage"
                      SetFocusOnError="true"
                      Display="Dynamic"
                      ValidationGroup="infoGroup"></asp:RegularExpressionValidator>
    </td>
</tr>

protected bool Wizard1_NextButtonClick(object sender, WizardNavigationEventArgs e)
{ 
    Page.Validate("infoGroup");
    if (Page.IsValid)
    {
        return true;
    }
    else
    {
        return false;
    }
}

受保护的bool向导1_NextButtonClick(对象发送器,向导导航目标)
{ 
页面验证(“信息组”);
如果(第页有效)
{
返回true;
}
其他的
{
返回false;
}
}

验证组与允许客户端和服务器验证无关。您可以在两个位置进行验证,而无需验证组。你为什么这么想?试着把
e.Cancel
放在你的else语句中。我在你发布的html中没有看到Wizard1\u NextButton按钮控件,请发布完整的codetrue,检查asp按钮标记是否也有ValidationGroup=“infoGroup”属性