验证摘要在第二次提交后保留

Summary of validation stays after second submit

NET 和 C# 创建注册表单。提交表单后,我的表单将通过验证,如果有任何错误,它们将显示在标签上的面板中。但是,我的问题是,在第一次验证之后,我再次按下提交后,第一次验证的错误仍然留在表单上,​​而第二组验证错误只会在后面列出。如果我想刷新验证,我将如何编辑我的代码,但在我的字段中留下正确的数据,以便我的用户仅更正不正确的字段以高效提交表单。这是一段代码,作为我如何验证表单字段之一的示例,

  if (teacherName.Length == 0)
        {
            TeacherNamePanel.CssClass = "form-group has-error has-feedback";
            Label span = new Label();
            span.CssClass = "glyphicon glyphicon-remove form-control-feedback";
            TeacherNamePanel.Controls.Add(span);
            lblWarning.Text += "Please enter the name of teacher-in-charge! <br />";
        }
        else
            TeacherNamePanel.CssClass = "form-group";

以及输入所有输入后的其余验证

string msg = "";
        msg = accBLL.processCreateAccount(groupName, password, confirmPassword, school, teacherName, groupName, member1, member2, member3);

        if (msg == "Sucess")
        {
            SuccessPanel.Visible = true;
            lblSuccess.Text = "You have successfully signed up";
            WarningPanel.Visible = false;
        }
        else
        {
            SuccessPanel.Visible = false;
            lblWarning.Text += "There has been an error. Please try again!<br />";
            WarningPanel.Visible = true;
        }

这是我用来显示验证消息的面板

<asp:Panel ID="WarningPanel" CssClass="alert alert-dismissable alert-danger" runat="server">
      <asp:Label ID="lblWarning" runat="server"></asp:Label>
</asp:Panel>

下面是我控制输入的面板

<asp:Panel ID="TeacherNamePanel" CssClass="form-group has-feedback" runat="server">
     <asp:TextBox ID="tbTeacherName" CssClass="form-control input-lg" placeholder="Teacher-in-charge" runat="server"></asp:TextBox>
</asp:Panel>

设置 EnableViewState 属性 为 lblWarning = False。即使对于 lblSuccess Label

,我也会建议设置 EnableViewState="False"