9

i have used custom validator

 protected void cvIsActive_ServerValidate(object source,ServerValidateEventArgs args)
        {
            if(args.Value.Length==1)
                args.IsValid = true;
            else
                args.IsValid = false;
        }       

this is code for server validate.. i have written to check whether its checked or not. i have taken control to validate as checkbox

<asp:CustomValidator runat="server" ErrorMessage="Please Select Status" 
            ID="cvIsActive" Font-Size="Smaller" 
            onservervalidate="cvIsActive_ServerValidate" ControlToValidate="chkIsActive"></asp:CustomValidator>

but as soon as page loads it giving error

Control 'chkIsActive' referenced by the ControlToValidate property of 'cvIsActive' cannot be validated. 
Saurabh Gokhale
  • 53,625
  • 36
  • 139
  • 164
deepti
  • 729
  • 4
  • 17
  • 38
  • 3
    A more robust answer can be found here http://stackoverflow.com/q/1228112/1066291. They are using it to make the checkbox required but you could write any custom validation logic. – Mark Rucker Jan 26 '12 at 19:11

1 Answers1

10

You don't need to set ControlToValidate property for CustomValidator when using it with CheckBox and simply use this in Server Validate like:

 args.IsValid = chkIsActive.Checked;
gbs
  • 7,196
  • 5
  • 43
  • 69