2011-09-18 4 views
4

I 양식 내에서 다음과 같은 HTML이있는 경우 :jQuery를 사용하여 양식 요소를 복제하고 지우는 방법은 무엇입니까?

<div class='example'> 
    <div class='row'> 
     <input name='first_field' type='text' value='Hello' /> 
     <input name='second_field' type='text' value='World!' /> 
    </div> 
</div> 

어떻게 원하는 이후 추가하기 위해 밖으로 벗겨 값으로,이 (먼저) '행'의 사본을 만들어 가야합니까, 여러 사용자 항목. 값이 이미 존재할 수있는 이유는 (이 예 에서처럼) 데이터가 편집되는 경우입니다.

<div class='row'> 
     <input name='first_field' type='text' value='' /> 
     <input name='second_field' type='text' value='' /> 
    </div> 

나는의 라인을 따라 생각 : 내가 얻을 싶습니다

var row = $('.example').find('.row:first-child').clone(); 
row.find('[name]').each(function() { 
    $(this).val(''); 
}); 

하지만이는 값을 제거하지 않는 것 점에서 작동하지 않으며,이 바깥을 캡처 않습니다 html (래퍼).

누구든지 조언 할 수 있습니까?

감사합니다.

+0

당신은 ' "첫째 아이 셀에만"후 누락? –

답변

2

js에 구문 오류가 있습니다. .find('.row:first-child).find('.row:first-child')이어야하지만 복제의 경우 은 기본값을 제거하는 것입니다. 그 스크래치 그 ... 그것은 실제 입력 요소를 명백히 복제하기위한 것입니다.

http://jsfiddle.net/Yb2Ym/

var row = $('.example').find('.row:first-child').clone(); 
row.find('[name]').each(function() { 
    $(this).val(''); 
}); 
$(".row:last").after(row) 
관련 문제