Как выполнить JavaScript после обновления панели обновления (Не удается получить Sys.WebForms.PageRequestManager.getInstance (). Add_endRequest (); для работы) - PullRequest
4 голосов
/ 26 октября 2009

Я пытаюсь запустить javascript после обновления панели обновления. Я прочитал несколько мест, где вы можете использовать код, подобный этому:

function codeToRun() {
    //Code Here
}

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

Но, похоже, это не работает ... есть идеи? Я пытался поместить код в область содержимого панели обновления, а также за ее пределы ... пока что мне не повезло Пожалуйста, дайте мне знать, если у вас есть понимание того, почему это может происходить.

Спасибо,
Matt

Ответы [ 2 ]

6 голосов
/ 27 октября 2009

Все должно быть за пределами UpdatePanel:

Markup:

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

Сценарий:

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
}
0 голосов
/ 26 октября 2009

Вызов System.WebForms.PageRequestManager должен произойти после того, как библиотека была включена и инициализирована, но, вероятно, не внутри UpdatePanel.

...