How to execute javascript once an update panel refreshes (Can't get Sys.WebForms.PageRequestManager.getInstance().add_endRequest(); to work)

StackOverflow https://stackoverflow.com/questions/1626515

Question

I'm trying to run javascript once an update panel has refreshed. I've read a few places that you can use code similar to this:

function codeToRun() {
    //Code Here
}

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

But it doesn't seem to be working... any ideas? I've tried putting the code inside the Content area of the update panel as well as outside of it... haven't had any luck so far. Please let me know if you have any insight to why this might be happening.

Thanks,
Matt

Was it helpful?

Solution

Everything needs to be outside of the UpdatePanel:

Markup:

<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>

Script:

if( typeof(Sys) != "undefined" )
{
    Sys.WebForms.PageRequestManager.getInstance().add_initializeRequest(initRequestHandler);     
    Sys.WebForms.PageRequestManager.getInstance().add_endRequest(endRequestHandler);   
}
else
{
    //we have a problem with ScriptManager
}

OTHER TIPS

The call to System.WebForms.PageRequestManager should come after the library has been included and initialized, but probably not inside the UpdatePanel.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top