MasterPage中的ValidationSummary隐藏成功标签

本文关键字:成功 标签 隐藏 ValidationSummary 中的 MasterPage | 更新日期: 2023-09-27 18:03:02

我有一个ValidationSummarySuccessLabelMasterPage
SuccessLabel在其中有详细信息,然后ValidationSummary然后验证失败时,我希望它隐藏SuccessLabel并仅显示ValidationSummary

<div id="ApplicationStatus" class="ValidationSummaryContainer">
    <asp:Label ID="StatusLabel" CssClass="SuccessSummary" runat="server" 
       Visible="false"></asp:Label>
    <asp:Label ID="WarningLabel" CssClass="WarningSummary" runat="server" 
        Visible="false"></asp:Label>
    <asp:ValidationSummary ID="ErrorValidationSummary" runat="server" 
           CssClass="ValidationSummary" DisplayMode="List"  />
    <asp:CustomValidator ID="ErrorCustomValidator" runat="server"></asp:CustomValidator>
</div>
<div id="ApplicationContent" class="ApplicationContentContainer">
    <asp:ContentPlaceHolder ID="MainContent" runat="server">
    </asp:ContentPlaceHolder>
</div>
protected void Page_Load(object sender, EventArgs e)
{
        if (!IsPostBack)
        {
            StatusLabel.Text = "Successfully loaded record";
        }
}

<asp:Content ID="Content1" ContentPlaceHolderID="MainContentPlaceHolder" runat="server">
       <asp:Textbox ID = "Text1" runat="server"/>
        <asp:RequiredFieldValidator id="InputTextBoxRequiredFieldValidator" runat="server" 
          ControlToValidate="Text1" Visible="false" CssClass="InlineNoWrap" Enabled="true">  
        </asp:RequiredFieldValidator>
        <asp:Button ID = "Button1" runat="server" Text="Submit"/>
 </asp:Content>

我试图在JavaScript中找到一种方法来捕获验证错误并隐藏StatusLabel。我不想在使用母版页的每个页面上的每个按钮上都放一个javascript函数。

谢谢,亚历克斯

MasterPage中的ValidationSummary隐藏成功标签

这样如何:

    protected void Submit(object sender, EventArgs e)
    {
        if (IsValid)
        {
            StatusLabel.Visible = true;
        }
        else
        {
            StatusLabel.Visible = false;                
        }
    }

您的验证代码完全遗漏了很多字段。

好了,现在我们要喝你的啤酒了。

  1. 为页面加载事件在标签中设置可见的false
  2. 则成功时间添加标签文本,并设置可见为true
  3. 你失去了对验证、验证组和显示字段的控制

请参阅此示例