2016-12-10 1 views
0

전체 페이지를 다시로드하지 않고 버튼을 클릭하면 특정 div에서 js를 새로 고침하고 싶습니다. js가로드 된 div를 다시로드하는 것도 가능합니다. http://www.philnicholas.com/2009/05/11/reloading-your-javascript-without-reloading-your-page/JS를 새로 고침하거나 전체 페이지를 나누지 마십시오

또는 예를 들어,이 코드를 사용하여 여기 Refresh/reload the content in Div using jquery/ajax

에서 다음과 같은 다른 게시물의 몇 가지 아이디어 : 만

$("#content").load(location.href + " #content"); 

난을 벌써 같은 몇 가지 솔루션을 시도했습니다 div하지만 스크립트는 다시로드되지 않으며 아무 것도 표시되지 않습니다.

아약스 요청을 사용하면 모든 js 코드가 텍스트로 div에 저장됩니다.

추가 생각이 있으십니까?

EDIT :로드 된 스크립트는 세션의 일부 값에 따라 내용을 표시합니다. 버튼을 클릭하면 스크립트를 실행하는 div의 다른 내용을 가져올 값이 변경됩니다.

편집 2 :이 추가 콘텐츠는 (다른 div의 물건) 스크립트에 의해 추가 된 사업부입니다 : 는 현재 상태가 전체 페이지를 다시로드 여기

  <div id="dynamic_content"> 
       <script src="myjs.js"></script> 
      </div> 

을 그리고는 버튼입니다

: 나는 내용의 재 장전을 구현하기 위해 노력 곳

  <div id="change_view_mode" onclick="change_view()">     
       <script> 

        if(window.SESSION.view_mode == "simple"){ 
         document.getElementById("change_view_mode").innerHTML = "complex tree"; 

        }else{ 
         document.getElementById("change_view_mode").innerHTML = "simple tree"; 
        } 

       </script> 
      </div> 

그리고 여기보기를 변경하는 기능 : 콘텐츠의보기를 변경

   //toggle view and reload the page 
       function change_view(){ 
         if(window.SESSION.view_mode == "simple"){ 

          $.ajax({ 
            url:'set_view_mode.php', 
            async: false, 
           }); 
          //$("#dynamic_content").load(location.href + " #dynamic_content"); 
          location.reload(true); 
         }else{ 

          $.ajax({ 
            url:'set_view_mode.php', 
            async: false, 
           }); 
          //$("#dynamic_content").load(location.href + " #dynamic_content"); 
          location.reload(true); 
         } 
        } 

작은 PHP 파일을 호출하여 세션의 view_mode를 변경합니다. 그런 다음 언급 한대로 여러 가지 작업을 시도했습니다 (코드에서 주석으로 남음). 이것은 현재보기에 따라 수행됩니다. 그래서 그것의보기를 하나에서 다른보기로 토글합니다.

+0

안녕하세요 @Maki, 내 대답을 확인하십시오. 그게 네가 필요한거야? – Ionut

답변

관련 문제