2010-12-06 7 views
0

안녕하세요 저는 고객의 세부 정보를 제공 할 웹 페이지를 개발 중입니다. 필자는 입력 필드에 대해 여러 가지 유효성 검사를 수행하고 DetailsView를 사용하여 고객의 세부 정보를 표시했습니다. 사용자 세부 정보가 데이터베이스에 존재하지 않는 경우 Detailsview는 "No records found"메시지를 표시합니다. 이제 에 유효하지 않은 사용자 이름이 입력되면 유효성 검사가 표시되지만, DetailsView의 EmptyDataTemplate에는 여전히 페이지에 "No records found"메시지가 표시됩니다. 어떻게하면 "레코드를 찾을 수 없습니다"라는 메시지가 삭제되거나 자세히보기가 비활성화됩니까? 따라서 해당 페이지에는 오류 메시지와 텍스트 상자 필드 () 만 표시됩니다.클라이언트 측 유효성 검사 관련 문제

<asp:TextBox ID="TextBox_FirstName" runat="server"></asp:TextBox> 
    <asp:RegularExpressionValidator ID="RegularExpressionValidator_FirstName" runat="server" 
     ControlToValidate="TextBox_FirstName" ErrorMessage="Enter a valid SSN" ForeColor="Red" 
     SetFocusOnError="True">*</asp:RegularExpressionValidator> 
    <br /> 
    <asp:TextBox ID="TextBox_LastName" runat="server"></asp:TextBox> 
    <asp:RegularExpressionValidator ID="RegularExpressionValidator_LastName" runat="server" 
     ControlToValidate="TextBox_LastName" ErrorMessage="Enter a valid date" ForeColor="Red">*</asp:RegularExpressionValidator> 
    <asp:Button ID="txtSubmit" Text="Validate" runat="server" /> 
    <asp:CustomValidator ID="AtLeastOneTextBoxValidator" runat="server" ClientValidationFunction="Validate_Textbox" 
     ValidateEmptyText="true"> </asp:CustomValidator> 
    <asp:ValidationSummary ID="ValidationSummary" runat="server" /> 

    <asp:DetailsView ID="Client_DetailsView" runat="server"> 
     <EmptyDataTemplate> 
      <strong>No Record Found.</strong> 
     </EmptyDataTemplate> 
    </asp:DetailsView> 

답변

1

Client_DetailsView가 양식을 제출할 때 데이터 만 바인딩되도록 코드를 변경하십시오.

또한 .aspx에서 표시 여부를 숨김으로 설정 한 다음 양식을 제출할 때만 표시되도록 설정하십시오.

관련 문제