2015-01-20 4 views
0

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> 
+1

Вы устанавливаете 'lblWarning.Text' в пустую строку в любой точке вашего кода? Похоже, вы просто добавляете и добавляете текст и никогда не перезагружаете его –

ответ

1

Установить свойство EnableViewState lblWarning = False. Я проинструктирую совет установить EnableViewState = «False» даже для lblSuccess Label

 Смежные вопросы

  • Нет связанных вопросов^_^