This is not the same old question about the validators and update panel compatibility.
Here’s my scenario:
I have a aspx page with a script manager. This page has a ascx user control with my functionality. In this control, I have a few panels and areas which will get enabled/disabled or visible/hidden according to what the visitor selects by clicking on some of the radio buttons which will control this behaviour.
Everything is fine until this point. Validators and UpdatePanel are not fighting against each other, however, if I try to submit the page without filling the form, I get a validation message on my summary and it’s all good with the validation itself.. Here’s the problem, the radio buttons, which are responsible for set visibility for some areas stops working, but it starts working again after the 2nd or 3rd click. It’s not delay or anything.. it just seems like the handlers are not bound to the control, then I click again, and it cleans up the summary and all error notifications and starts working again..
I don’t know if it adds to the issue, but both the user control and the page have telerik controls such as combo box with load on demand, tooltips and the loading panel..
I have searched a lot about it and all I could find was the question regarding the validation controls not working inside updatepanel or updatepanel not working with validators.. in this case, it actually works, I only have problems after the validation has been performed and the page.isvalid is set to false..
To me it sounds like there is a server error in the first request ajax is sending. So here is my recommendation:
Open your web page in Firefox, then open Firebog and select “network” tab. This tab shows you every single request the browser sends to the server (including request for scripts, images, … and also ajax async requests).
So now clear the list under “network” in firebog and trigger your ajax for the first time, see if there is any request sent to the server. if there is you can see if the response is a OK 200 response or a 500 server error and ofcourse you can see the full details of the error.
Hope this helps.