2013-11-15 3 views
-1

다음은 sum1 디버깅하고 내 실수를보고하는 간단한 스크립트입니다.
jQuery : 선택기 아약스로드 된 콘텐츠에서 작동하지 않는다

<span>Click to format content 2&#60;/span><br> 

--test.php--

<html> 

    <head> 
     <script src="http://code.jquery.com/jquery-1.10.2.min.js"></script> 
     <script> 
      $(document).ready(function() { 
       $("#content1").click(function() { 
        $("#content2").load("test.php"); 
       }); 
       $("span").click(function() { 
        $(this).css("font-size", "30px"); 
       }); 
      }); 
     </script> 
    </head> 

    <body> 
     <div id="content1">Click to load content2</div> 
     <div id="content2"></div> 
    </body> 

</html> 
지금 내 문제는 범위의 선택이 작동하지 않습니다.

+0

방에 들어가기 전에 누군가가 당신의 이름을 부르는 사람이 있다면, 그 사람이 당신을 찾을 수 있습니까? 그것은 여기서 일어나는 일입니다. 스팬을 페이지에 추가하기 전에 모든 범위를 묻는 중입니다. 선택기를 추가하기 전에 범위를 찾는 방법은 무엇입니까? – epascarello

답변

2

이벤트 위임 :

$("#content2").on("click", "span", function() 
0

이을 시도해보십시오.

$("body").on("click","span",function(){ 
    $(this).css("font-size","30px"); 
}); 
0

은 그냥 $ ("#의 content2")의 성공 이벤트 내부의 스팬 클릭 기능을 추가로드 기능

이렇게하면 새 스팬 클릭 바인딩 함수는 새 스팬이 페이지에로드 된 후에 만 ​​트리거되므로 click 이벤트는 새 스팬에도 적용됩니다.

<script> 
      $(document).ready(function() { 
       $("#content1").click(function() { 
        $("#content2").load("test.php",function(){ 

         // Now the click event is assigned after the span is loaded. 
         // Hence its applied to newly loaded span as well 
         $("span").click(function() { 
         $(this).css("font-size", "30px"); 
         }); 

        }); 
       }); 

      }); 
</script> 

건배 .. !!

관련 문제