2012-07-25 4 views
3

DOM 요소가 있는데 원본 콘텐츠가 포함되지 않은 복제본을 만들고 싶습니다. <div class='cl' id='i'>Some text<p><a href="#">anchor</a>paragraph</p></div>요소를 복제하는 가장 좋은 방법은 무엇입니까? 유형 및 속성 만?

생산 :에서

자바 스크립트와

그러나에 <div class='cl' id='i'></div> 효율적인 방법 (또는 jQuery를 훨씬 더 우아 경우)

가장 효율적인 솔루션은 for 루프를 필요합니까?

+2

복제 ID를 변경하는 것을 잊지 마십시오. – nnnnnn

답변

4

jQuery를하지 않고, cloneNode를 사용합니다.

var newNode=oldNode.cloneNode(false); 
+0

이 기능의 기능은 내 필요에 거의 완벽합니다. 감사합니다 –

+0

+1 jQuery가 필요하지 않습니다. 나는'cloneNode'에 대해 몰랐다 ... – sachleen

2

.clone()을 사용하고 elemnt의 html을 아무 것도 설정하지 마십시오.

​$("#i").clone().html('')​​​​​​ 
+0

또는 "$ ("# i ") .clone(). empty();'동사"empty "는 현재 일어나고있는 것을 설명하기 때문에 선호합니다. @BertEvans - 링크 된 Doco 페이지를 읽는 방식으로 자식 요소를 복사할지 여부가 아니라 이벤트 처리기를 복사할지 여부를 매개 변수로 제어하는 ​​것처럼 들립니다. – nnnnnn

+0

예 .clone(). empty()는 내가하고 싶지 않은 것과 똑같습니다. 그것은 불필요한 작업을하고 그것이 사실이라는 것도 분명합니다. –

관련 문제