문제

UpdatePanel 프로세스가 완료되면 스크립트를 실행하는 방법이 있습니까?

레코드의 "삽입", "복사"및 "편집"을 허용하는 페이지가 있습니다. 이것은 페이지 탐색을 방지하기 위해 업데이트 패널에서 수행됩니다. 페이지의 다른 곳에서 "Flash"메시지를 인쇄하고 싶습니다. "귀하는 성공적으로 레코드를 입력했습니다." UpdatePanel 근처에 있지 않으며 메시지에 jQuery 효과를 사용하여 4 초 후에 사라집니다. UpdatePanel로 스크립트를 다시 보내거나 UpdatePanel 새로 고침 후 실행되도록하려면 어떻게해야합니까? ASP에 스크립트를 작성해야합니까? 생각?

도움이 되었습니까?

해결책

예:

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

그리고:

function endRequestHandler(sender, args)
{
  // Do stuff
}

선적 서류 비치 여기 그리고 여기. 페이지의 모든 AJAX 요청에 대해 이것이 해제됩니다.

다른 팁

이것은 트릭을 수행해야합니다.

       <script type="text/javascript">
            var prm = Sys.WebForms.PageRequestManager.getInstance();
            prm.add_beginRequest(BeginRequestHandler);
            prm.add_endRequest(EndRequestHandler);

            function BeginRequestHandler(sender, args) 
            {
                 //Jquery Call
            }

            function EndRequestHandler(sender, args) 
            {
                 //Jquery Call

            }
        </script> 

다음은 ScriptManager의 정적 메소드 RegisterClientscriptBlock을 사용하여 수행하는 방법에 대한 기사입니다. 그것을 시도하고 매력처럼 작동합니다.

http://csharperimage.jeremylikness.com/2009/06/inject-dymamic-javaScript-into-aspnet.html

var requestManager = Sys.WebForms.PageRequestManager.getInstance();
requestManager.add_beginRequest(function () { alert('here1') });
requestManager.add_endRequest(function () { alert(here2') });

원천: http://www.howtositecore.com/?p=36

sys.webforms.pagerequestmanager.getInstance () 메소드는 나에게도 적합합니다.

여러 업데이트 패널이 포함 된 많은 페이지로 작업하며 업데이트 패널이 새로 고침을 원하지 않더라도 자동으로 발사되었다는 것을 알게되었습니다. 따라서 이벤트에서 발사되는 기능 내부에서 다음과 같은 것이 있는지 확인하십시오.

function BeginRequestHandler(sender, args) {
if (args.get_postBackElement().id == "ID of the Updatepanel") {
// do stuff here

브루노,

먼저, 직접 질문에 답하십시오. 업데이트 패널에서 호출되는 콜백에서 registerStartUpscript 호출을 사용하여 JS 메소드를 호출 할 수 있어야합니다. 그런 다음 JS 메소드에서 메시지를 표시 한 다음 다음을 사용할 수 있습니다.

setTimeout('$('#myMessage').fadeOut("slow")', 4000);

4 초 후에 사라집니다.

한 걸음 더 나아가려면 이미 JavaScript를 구현하고 있으므로 확인하겠습니다. UpdatePanels에 대한이 기사. 가능하면 Ajax 전화를 보내 삽입, 복사 및 편집을 수행하려고하면 사용자 피드백을 더욱 단순화하고 와이어의 과도한 정보를 방지 할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top