3

업데이트 패널이 새로 고쳐지면 javascript를 실행하려고합니다. 다음과 비슷한 코드를 사용할 수있는 몇 군데를 읽었습니다.업데이트 패널이 새로 고쳐지면 자바 스크립트를 실행하는 방법 (작동하려면 Sys.WebForms.PageRequestManager.getInstance(). add_endRequest();를 얻을 수 없음)

function codeToRun() { 
    //Code Here 
} 

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

하지만 실제로 작동하지 않는 것 같습니까? 업데이트 패널의 컨텐트 영역 안쪽에 코드를 넣으려고 시도했지만 그 밖에서는 아무런 운이 없었습니다. 이것이 일어날 수있는 이유에 대한 통찰력이 있다면 알려주십시오.

감사합니다,

+2

이유 # 1827 MVC로 전환합니다. 좋은 질문이지만, 불행하게도 여전히 webform의 수렁에 빠져 있습니다. – MrBoJangles

답변

5

모든 것이 UpdatePanel 밖에 할 필요가 :

마크 업 : 스크립트

<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

ScriptManager 태그 대신 코드 숨김에 'System.Web.UI.ScriptManager.RegisterStartupScript()'를 사용하기 때문에 ScriptManager 태그를 생략하고 위의 add_endRequest() 부분을 사용하기 만하면됩니다. 시원한! – MrBoJangles

0

System.WebForms.PageRequestManager에 대한 호출 라이브러리가 포함되어 있으며 초기화 된 후 온, 그러나 아마하지 UpdatePanel 내부한다
마.

+0

어떻게 포함하고 초기화합니까? – Matt

+0

@Matt ScriptManager 및 UpdatePanels를 페이지에 추가 할 때 @Matt가 포함되어 있습니다. ScriptManager 및 UpdatePanels를 페이지에 추가 할 때 포함되어 있습니다. 스크립트가 없으면 작동하지 않으므로 쉽게 확인할 수 있습니다. :) 일반적으로 ''태그 상단에 있습니다. –