2013-08-14 2 views
1

버튼을 누를 때마다 항상 label 필드에 "양호"가 표시됩니다. 나는 <asp:CustomValidator>ControlToValidate="input"을 삭제할 때asp : CustomValidator 서버 컨트롤을 사용하는 방법?

<%@ Page Language="C#" %> 

<!DOCTYPE html> 

<script runat="server"> 
    void Validate(Object obj, ServerValidateEventArgs args) 
    { 
     args.IsValid = false; 
    } 

    void click(Object obj, EventArgs args) 
    { 
     if (Page.IsValid) 
     { 
      label.Text = "GOOD"; 
     } 
     else 
     { 
      label.Text = "FALSE"; 
     } 
    } 
</script> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <div> 
     <asp:Label   runat="server" Text="Please input a name" /> 
     <asp:TextBox   runat="server" ID="input"/> 
     <asp:CustomValidator runat="server" ID="validator" ControlToValidate="input" OnServerValidate="Validate"/> 
     <asp:Button   runat="server" OnClick="click"/> 
     <asp:Label   runat="server" ID="label"/> 
    </div> 
    </form> 
</body> 
</html> 

는하지만, 모든 것이 OK입니다.

왜?

답변

1

동일한 유효성을 허용하지 않으려면 사용자 지정 유효성 검사기의 속성도 ValidateEmptyText ~ True으로 설정해야합니다.

<asp:CustomValidator ValidateEmptyText="True" ... 
관련 문제