2013-11-24 40 views
9

Vì vậy, tôi có hai div cụ thể trên trang web của mình. Cả hai đều có cùng thuộc tính css, nhưng một trong số chúng giữ 24 div khác bên trong nó. Tôi muốn tất cả các div này được sao chép vào một cuộc lặn khác. Đây là cách nó trông giống như:Sao chép nội dung của div vào một div

<div id="mydiv1"> 
    <div id="div1"> 
    </div> 
    </div id="div2> 
    </div> 
    //and all the way up to div 24. 
</div> 

<div id="mydiv2"> 
</div> 

Vì vậy, tôi muốn tất cả các 24 divs withing mydiv1 được sao chép vào mydiv2 khi tải trang.

Cảm ơn trước

Trả lời

13

divs Trước hết chúng ta đang gán vào biến (không bắt buộc)

var firstDivContent = document.getElementById('mydiv1'); 
var secondDivContent = document.getElementById('mydiv2'); 

Bây giờ chỉ cần chỉ định nội dung mydiv1 để mydiv2.

secondDivContent.innerHTML = firstDivContent.innerHTML; 

DEMO http://jsfiddle.net/GCn8j/

MÃ COMPLETE

<html> 
<head> 
    <script type="text/javascript"> 
    function copyDiv(){ 
     var firstDivContent = document.getElementById('mydiv1'); 
     var secondDivContent = document.getElementById('mydiv2'); 
     secondDivContent.innerHTML = firstDivContent.innerHTML; 
    } 
    </script> 
</head> 
<body onload="copyDiv();"> 
    <div id="mydiv1"> 
     <div id="div1"> 
     </div> 
     <div id="div2"> 
     </div> 
    </div> 

    <div id="mydiv2"> 
    </div> 
</body> 
</html> 
+0

Đừng quên var firstDivContent và vân vân. Việc hiển thị các biến đối với phạm vi toàn cục là thực hành xấu –

+3

Điều này thực sự không hoạt động, 'innerHTML' trả về một chuỗi không phải là tham chiếu đến thuộc tính của phần tử –

+0

@EricHerlitz Cảm ơn đã cảnh báo cho tôi về' var '. –

7

Bạn có thể sử dụng các sự kiện .ready() của jquery

jQuery(document).ready(function() { 
    jQuery('.div1').html(jQuery("#div2").html()); 
} 

Cũng làm việc DEMO.

2
var divs = document.getElementById('mydiv1').innerHTML; 

document.getElementById('mydiv2').innerHTML= divs; 
1

Thay thế bằng jquery Bạn có thể sử dụng clone và đặt nó vào div mục tiêu của mình. Ví dụ:

$('#mydiv1').clone().appendTo('#mydiv2'); 

Sao chép #mydiv1 vào #mydiv2

Các vấn đề liên quan