【发布时间】:2010-11-24 20:54:27
【问题描述】:
我遇到了一个无法解决的验证问题。我“知道”我已经正确设置了它,但每次它都不会阻止我提交。基本上,我有一个表格,表格中唯一需要的是一个名为“tbEmail”的文本框。这是我的 aspx 页面中的代码:
<tr>
<td>
<asp:TextBox ID="tbEmail" runat="server" Height="40px" Width="688px"
Font-Size="20px" input-type="email" CausesValidation="True" AutoCompleteType="Email"></asp:TextBox>
</td>
<td>
<asp:RegularExpressionValidator ID="regexEmail" runat="server" ControlToValidate="tbEmail" SetFocusOnError="True" ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*" ValidationGroup="Email">
</asp:RegularExpressionValidator>
<asp:RequiredFieldValidator ID="rfvEmail" runat="server" ValidationGroup="Email" ControlToValidate="tbEmail" ErrorMessage="*">
</asp:RequiredFieldValidator>
</td>
</tr>
在我后面的代码中,在图像按钮单击事件处理程序上我有这个:
protected void btnSubscribe_Click(object sender, ImageClickEventArgs e)
{
Page.Validate("Email");
if (Page.IsValid)
{
//call the method
my method here...
mvwForm.SetActiveView(vwSuccessEmail);
ClearControls(Page);
}
else
{
lblValidation.Visible = true;
}
}
但每次,如果我将电子邮件字段留空,它会继续加载 vwSuccessEmail 视图。我尝试将 tbEmail 控件设置为使用 ValidationGroup="Email" 以及相同的结果。有人能抓住我在这里遗漏的东西吗?
【问题讨论】:
标签: .net asp.net validation forms