<com:TContent ID="Content"> <h2>Validators ClientSide.OnValidationError triggered twice</h2> <h3>Use ClientSide.ObseveChanges="false"</h3> <com:TTextBox ID="text1" /><br /> <com:TRequiredFieldValidator id="validator1" ControlToValidate="text1" Text="Error" ClientSide.ObserveChanges="false" ClientSide.OnValidationError="alert('error on text1 fired')" /> <br /> <com:TTextBox ID="text2" /><br /> <com:TRequiredFieldValidator id="validator2" ControlToValidate="text2" Text="Error" /> <br /> <com:TButton id="button1" Text="submit" /> <h3>Conditions</h3> <pre> (TextBox? B is just there to prevent server submission) To verify try exactly this: 1. Enter nothing and click on submit : 1 error event will be triggered 2. Enter something into TextBox? T and click on submit : no error event (ok) 3. Delete your text from TextBox? T again and click on submit : error event will be triggered twice </pre> </com:TContent>