Home » jQuery » jQuery and ASP.NET UpdatePanel

jQuery and ASP.NET UpdatePanel

iStock_000005899630Medium I’ve been busy over the last couple of weeks working on an administrative application that uses a ton of AJAXy stuff.

The application is interactive in the sense that every time a field is updated in the administrative screen, another part of the screen updates to show the user what the final result will look like when it is published.

Where things get tricky is that the screens use a considerable amount of jQuery to do things like binding to events so that updates will occur when the events fire.

But the main content that is being updated for one of my screens is actually in an UpdatePanel.  This is a problem, because in order for that screen to render correctly I have to run some jQuery code.  But the jQuery “ready” event doesn’t fire when the UpdatePanel gets updated.

So how do we fix that?

Fortunately, a quick search of the big G solved the problem.  It turns out Imran Akram has already solved this problem.  You just need to call

Sys.WebForms.PageRequestManager.getInstance()
    .add_endRequest(EndRequestHandler);

somewhere in your code.  Where “EndRequestHandler” is a pointer to a regular javascript function that calls your jQuery code.

What I didn’t like about the way that Imran implemented this is that he wired it into the Page_Load() event.  While this works, I thought, “there must be a way to make this work more like jQuery.”  And there is.

You just need to make sure that your jQuery code runs after your MS-AJAX scripts.  So I put my call at the end of my “ready” event handler for the page and everything works just great!

 

Other post in jQuery

Like this Article? Subscribe to get every article sent to your email.

Related Post

  • jQuery – AccordionjQuery – Accordion If you’ve been using the MS-AJAX Accordion control, stop it right now!Seriously. Once I show you how easy the jQuery version is, you’ll want to drop it. Shoot! You may even want to […]
  • jQuery, Each() and Async GetsjQuery, Each() and Async Gets One of the things to keep in mind when using jQuery is that nothing is a blocking call.  Sure, there is a certain sequence to when things operate.  But, to be safe, you should […]
  • JQuery, Cufon, and Dynamic ContentJQuery, Cufon, and Dynamic Content Yesterday I mentioned a new tool called Cufon that allows you to easily embed fonts in your web site. One quirk about this tool is that your HTML has to be rendered prior to applying, […]
  • Using JSON in ASP.NETUsing JSON in ASP.NET If you've been avoiding using JSON in your ASP.NET application because you think it's hard, you're an idiot. I can say that, because I've been avoiding it for exactly that reason. I've […]
  • jQuery – Retrieving HTML FragmentsjQuery – Retrieving HTML Fragments A couple of weeks ago I mentioned that I had built a tooltip using jQuery.  We focused mostly on the positioning of the tooltip at the time because, historically, that's where most of the […]

About Dave Bush

Dave Bush is a Full Stack ASP.NET developer. His commitment to quality through test driven development, vast knowledge of C#, HTML, CSS and JavaScript as well as his ability to mentor younger programmers and his passion for Agile/Scrum as defined by the Agile Manifesto and the Scrum Alliance will certainly be an asset to your organization.

One Pingback/Trackback