我的ASP.net网站中有一个母版页。这里我有一个按钮。它将导航到wecomePage。这是后面的代码。
protected void ImageButtonShortcut1_Click(object sender, ImageClickEventArgs e)
{
Response.Redirect("welcomePage.aspx", true);
//Server.Transfer("welcomePage.aspx", true);
}现在我有一个子页面,它继承了上面的master。在子页面中,我使用了一个带有Required validation的TextBox。
<asp:TextBox ID="TextBox_Model" runat="server"> </asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator6" runat="server"
ControlToValidate="TextBox_Model" ErrorMessage="Model Required"></asp:RequiredFieldValidator> 场景:当用户导航到上面的子页面而没有在文本框中输入任何内容时,他正在尝试点击母版页按钮以返回到WelcomePage。
不幸的是,它不允许导航,因为用户没有填写必填字段。我该如何克服这个问题呢?请帮帮我。谢谢。
发布于 2012-04-12 13:53:56
您似乎没有使用RequiredFieldValidator的ValidationGroup作为他们的通信按钮。试着用那个
<asp:RequiredFieldValidator ID="RequiredFieldValidator6" runat="server"
ValidationGroup="WelcomePageTxtBox" ControlToValidate="TextBox_Model" ErrorMessage="Model Required"></asp:RequiredFieldValidator>
<asp:Button ID="Button2" runat="server" ValidationGroup="WelcomePageTxtBox" Text="Button" />发布于 2012-04-12 13:59:46
基本上,每个控件设置为CausesValidation属性设置为True时都会发生这种情况。
来自Required Field validator and Page Valid methods
方法遍历页面上所有已启用的验证控件并验证它们。此事件在页面生命周期中的Load事件之后发生。
如果引发事件的控件指定了ValidationGroup,则只会通过调用Page.Validate( ValidationGroup )重载方法来验证属于同一ValidationGroup的已启用的验证器控件。如前所述,对于CausesValidation属性设置为true的控件,这是自动完成的。
指定验证组的
期间进行验证
在后台的代码中,您可以这样做
protected void button2_click(object sender, EventArgs e)
{
if(!page.isValid)
//show errors
}
else
{
// do some stuffs
}https://stackoverflow.com/questions/10117801
复制相似问题