2009-11-17 3 views
3

나는 나의 페이지의 <head> 섹션에 Javascipt의이 비트를 락을 해요 :이 페이지가로드 처음으로 위대한 작품을

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('dl.expander dd').expander 
     (
      { slicePoint: 50, widow: 2, expandEffect: 'show', userCollapseText: '[^]' } 
     ); 
    }); 
</script> 

; 그러나 <asp:updatepanel> 안에있는 <asp:button>을 클릭하면 페이지가 부분적으로 새로 고쳐지지만 $(document).ready은 다시 호출되지 않습니다.

$(document).ready 섹션의 자바 스크립트가 접혀서 페이지의 pararaph (또는 class = "expander"인 dl) 목록에 "readmore"옵션을 추가하기 때문에 중요합니다. 대부분이 태만.

답변

8

AJAX 클라이언트 쪽 endRequest 이벤트에 처리기를 추가해야합니다. 자세한 내용은 아래 링크를 참조하십시오. 이 "이벤트"는 ajax 엔진이 서버에 대한 요청을 완료 할 때 호출되며, 업데이트 패널에있는 컨텐츠에서 실행중인 모든 자바 스크립트에 필요합니다. 내가 필요로 우수한 http://msdn.microsoft.com/en-us/library/bb383810.aspx

<script type="text/javascript"> 
    $(function() { 
     Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler); 
    }); 

    function EndRequestHandler(sender, args) { 
     // code that you want to run when the request is complete 
    } 
<script> 
+0

저는 오랫동안이 간단한 솔루션을 찾고있었습니다. 내가 찾은 가장 간단한 해결책. – iamwonder

관련 문제