2011-11-02 3 views
0

JQuery를 처음 접했고 Clone() 함수에 약간의 문제가 있습니다.JQuery 복제 된 Div 수를 어떻게 제한합니까?

제 질문은 어떻게 답변을 복제 할 수 있습니까? 변수를 선언하고 원하는 수에 도달 할 때까지 루프를 통해 변수를 실행합니까?

여기

> <div id="answer_wrapper"> 
>  <div id="answer"> 
>   <h3 class="new">Answer 1</h3> 
>   <asp:TextBox ID="QuestionAnswer1" runat="server" CssClass="form" Width="300px"></asp:TextBox> 
>  </div> 
>  <h3 class="new">Answer 2</h3> 
>  <asp:TextBox ID="QuestionAnswer2" runat="server" CssClass="form" Width="300px"></asp:TextBox> 
> </div> <!-- end answer_wrapper --> 
> <br /> 
> <asp:Button ID="ga" runat="server" CssClass="button_add_question" style="border: 0px;" /> 
> <a id="foo" href="#">Duplicate</a> 

> <script type="text/javascript"> 
>  $('#foo').click(function() { 
>  $('#answer').clone().appendTo('#answer_wrapper'); 
>  }); 
> </script> 

어떤 도움이 많이 난 정말이 문제를 접근하는 방법을 알고하지 않는 이해할 수있을 것 .ASPX에게 있습니다.

+0

어떻게 변경할 수 있습니까? –

답변

2

var 외부 클릭 이벤트를 설정하고 값을 늘리거나 div 수를 계산하여 복제 된 div 수를 제한 할 수 있습니다.

나는이 ID를 변경하거나 제거하기를 원한다.

<script type="text/javascript"> 
    var count = 1; 
    $('#foo').click(function() { 
     if(count < 5) { 
      $('#answer').clone().attr({ 'id': 'answer' + count }).appendTo('#answer_wrapper'); 
      //$('#answer').clone().removeAttr('id').appendTo('#answer_wrapper'); // remove the attribute 
      count++; 
     } 
    }); 
</script> 

계산 된 div :

코드가 어쩌면 이렇게, 좋지 않은 생성하기 위해 동일한 ID로 여러 요소가 발생할 것입니다,하지만 귀하의 질문에 대답하는 것 같습니다
<script type="text/javascript"> 
    $('#foo').click(function() { 
     if($('.answer').length < 5) { // Hope you add a class to the answer 
      $('#answer').clone().addClass('answer').removeAttr('id').appendTo('#answer_wrapper'); 
     } 
    }); 
</script> 
+0

훌륭한 솔루션입니다. 간단하고 깔끔합니다. 감사합니다 – HGomez90

3

이 :

<script type="text/javascript"> 
    var limit = 10; 
    $('#foo').click(function() { 
     if($('#answer').length < limit) { 
      $('#answer').clone().appendTo('#answer_wrapper'); 
     } 
    }); 
</script> 
+0

감사합니다. 귀하의 답변도 잘 작동했습니다 – HGomez90

+0

당신은 ID의 중복 코드 부분을 언급했습니다. 어떤 부분에 관심을 가져야합니까? – HGomez90

관련 문제