2009-11-05 6 views
0

링크를 클릭하면 html() 함수로 <div>이 채워집니다. 기본적으로, 나는 페이지를 새로 고치지 않고, <div> 안에 물건을 넣고 싶다.선택기가 완전히 작동하지 않습니다.

잘 작동합니다. 그러나, 나는 <div>에 링크를 전달하고 그것을 선택하려고합니다! 예상대로 문자 그대로 다음 페이지를 채우는 대신 다른 페이지로 이동합니다. <div>.

<script type="text/javascript"> 
$(document).ready(function() { 

    $(".link1").click(function(){ $("#div1").html("<a href='#' class='link2'>click here</a>"); return false; }); 
    $(".link2").click(function(){ $("#div2").html("Just Text"); return false; }); 

}); 
</script> 

<div id="div1"></div> 
<div id="div2"></div> 

답변

2

당신은 아마 사용할 live() :

$(function() { 
    $("a.ink1").live("click", function() { 
    $("#div1").html("<a href='#' class='link2'>Click here</a>'); 
    return false; 
    }); 
    $("a.link2").live("click", function() { 
    $("#div2").html("Just text"); 
    return false; 
    }); 
}); 

이유는) 클릭 (와 이벤트를 바인딩 할 때 당신이 만들 요소가 아닌 시간에 존재하는 요소에 그렇게한다는 것입니다 후에. 그것은 live()을위한 것입니다.

+0

는 그'$ ("a.link1") 살 ("클릭", 기능() 안 {...'와'$ ("a.link2 ") .live ("click ", function() {...'? – beggs

+0

@beggs : 네, 그렇게해야합니다. – cletus

0

에 대해 어떻게 :.

<script type="text/javascript"> 
$(document).ready(function() { 

    $(".link1").click(function(){ $("#div1").html("<a href='#' class='link2'>click here</a>"); renderlink2(); return false; }); 
    renderlink2(); 

}); 

function renderlink2(){ 
    $(".link2").click(function(){ $("#div2").html("Just Text"); return false; }); 
} 
</script> 

<div id="div1"></div> 
<div id="div2"></div> 
관련 문제