I am using an ASP.NET update panel to retrieve user info using the on TextChanged for the textbox, here is my code:
<asp:TextBox AutoPostBack="true" OnTextChanged="thingId_TextChanged" ID="thingId" runat="server"></asp:TextBox>
AutoPostBack on text-box will trigger post-back when the focus is lost from the text box. TextChanged
event will be fired on any subsequent post-back (can be due to button-click or text box focus change). So you need to make certain
My guess is you are probably suffering from #2. You can use tool such as Fiddler (or Firebug on FireFox) to check if browser is firing AJAX (XHR) request when the focus is lost from the text-box.
As @VinayC posted, AutoPostBack
means that the page will postback to the server when your TextBox
loses focus. No built-in event causes postback on every character added to a text input, and for good reason. UpdatePanel
postbacks don't cause the page to flicker, but they can be just as heavy as a full postback.
If you want to work around this, you can give your textbox a client onchanged
event handler, the JavaScript of which will be built from Page.ClientScript.GetPostBackEventReference()
.
The correct solution would be to use an AJAX method call from your JavaScript code rather than an UpdatePanel
partial postback in onchanged
.