2010-04-06 5 views
3

jQuery를 처음 사용하고 사용자가 버튼을 누를 때마다 다른 동일한 드롭 다운 메뉴가 나타나게하려고합니다.jQuery로 버튼 푸시시 요소 복제

<script type="text/javascript"> 
    $(document).ready(function(){ 
     $("#append").click(function(){ 
      $("#foo").append($("#foo")); 
     }); 
    }); 
</script> 

그러나, 오히려 원래의 드롭 다운을 복제하는 것보다, 그것이 사라지지 : 나는 #append 버튼 ID입니다 및 #foo 드롭 다운 ID입니다이 작동 것이라고 생각! 내가 도대체 ​​뭘 잘못하고있는 겁니까?

답변

4

당신이 뭔가 원하는 : 당신이<select> 요소 내부되지 (부모에 추가 할이 경우 있도록

$(document).ready(function(){ 
    $("#append").click(function(){ 
    $("#foo").parent().append($("#foo").clone().removeAttr("id")); 
    }); 
}); 

.append(), 그것은에 호출 된 요소의 끝에 추가를 옵션을 추가하는 것처럼). 또한 원본 인스턴스를 이동하지 않으려면 .clone()으로 지정합니다. 또한 ID가 고유한지 확인하고 id="foo"을 제거하고 클래스를 지정하거나 사본 등에서 ID를 제거하십시오. 그러나 중복 ID.

+0

감사합니다. – bsamek

1

당신이 요소가 clone()을 사용하여 복제 할 경우

말했다되고 그건
$("#foo").clone().attr("id", "foo2").insertAfter("#foo"); 

, 은하지 시도하고 자신 만의 메뉴를 만들 수 있습니다. 기존 플러그인을 사용하십시오 (예 : superfish). 메뉴에는 악성 크로스 브라우저 문제가 있습니다. 특정 휠을 재발 명하는 데는 아무런 가치가 없습니다.