我正在尝试为我的按钮编写代码来检查" infoGroup"中的验证控件。在我的向导中单击下一个按钮时。
当我单击下一个按钮时,它将转到向导中的下一步,跳过验证控件。如果必填字段为空或者它们具有无效值但它确实存在,则不应继续前进。在将它们添加到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;
}
}