2017-12-04 20 views
1

사용자 입력 (라디오 버튼 클릭)에서 다른 섹션 다음에 섹션을 복제하려고 시도하지만 작동하지 않습니다 ... 도움을 주시면 감사하겠습니다.JQuery가 작동하지 않는 섹션 복제

<section class="clonetester"> 
    <input id="1a" type="radio" value="1" name="q1">yes 
    <input id="1b" type="radio" value="0" name="q1" >no 
    <br /> 
    <input id="date1" type="datetime-local" name="date" />date<br /> 
</section> 

<section class="here">clone follows</section> 

<script> 
$('input').click(function(e){ 
    $('#1a').(':checked'){ 
     $('.clonetester').clone().appendTo(".here"); 
    } 
}) 
</script> 

답변

2

변경 사항을 적용하기 위해서는 여러 가지 사항이 있습니다.

  • 입력 요소에 click 대신 change을 사용하십시오.
  • $('#1a').(':checked')$('#1a').is(':checked')으로 대체되어야하고 if 블록으로 묶어야합니다.

$('body').on('change', 'input[type="radio"]', function() { 
 
    var $this = $(this); 
 

 
    if ($this.hasClass('1a') && $this.is(':checked')) { 
 
     // closeset clonetester 
 

 
     var $clonetester = $this.closest('.clonetester').first(); 
 

 
     if ($clonetester) { 
 
     $clonetester.clone().appendTo(".here"); 
 
     } 
 
    } 
 
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<section class="clonetester"> 
 
    <input class="1a" type="radio" value="1" name="q1">yes 
 
    <input class="1b" type="radio" value="0" name="q1">no 
 
    <br /> 
 
    <input class="date1" type="datetime-local" name="date" />date 
 
    <br /> 
 
</section> 
 
<section class="here">clone follows</section>

+0

무엇 id와 class, 생성 된 클론이? – Pussyfer

+1

정확하게'class'와'id'를 갖습니다. 그리고 페이지의 'id'는 고유해야하므로이 동작을 중단합니다. –

+0

숫자를 추가하는 등의 방법으로 복제 ID를 변경할 수 있습니까? – Pussyfer