2011-10-08 4 views
0

webform에 텍스트 필드를 동적으로 추가하려고합니다. 기존 텍스트 필드 옆에 '추가'아이콘이 있습니다. 아이콘을 클릭하면 '추가'아이콘과 텍스트 필드의 새로운 조합이 추가됩니다. 그런 다음 새로운 '추가'아이콘과 동일한 상황입니다. 어떻게 할 수있는 자바 스크립트 또는 jquery 프레임 워크에서?JavaScript의 클릭 핸들러에서 현재 객체를 복제하는 방법

답변

2

clone() 메서드를 사용하여 요소를 복제합니다.

$("#add").live("click", function(ev){ 
    var clone = $(ev.target).clone(); 
    //Add the clone to the document, eg: clone.appendTo("body"); 
}) 

다음을 참조하십시오 : JQuery Docs - Clone.

<div><input><button>add</button></div> 

가 그런 시도 : 같은 가정

+1

예. .live() (또는 내 환경 설정, .delegate())를 사용하면 이벤트를 복제 할 필요가 없으므로 약간 더 우아한 옵션이됩니다. –

0

var elm; 
$('button').click(function() { 
    elm = $(this).parent(); 
    elm.after(elm.clone(true)); 
}); 

데모 : http://jsfiddle.net/KL7QZ/2/

.clone 방법에 true 전달은 이벤트를 복제합니다.

+0

다음과 같이 제거 버튼과 핸들러를 추가합니다.

$ ('# add'). (function #) { $ (this) .parent(). after ($ (this)) .parent() .clone (true)); }); $ ('# remove'). (function() { $ (this) .parent(). remove(); }); 제거 기능이 작동하지 않는 것 같습니다. 문제가 뭔지 말해 줄 수 있니? – David

+0

요소를 복제 할 때 ID를 사용하지 마십시오. – David

관련 문제