2012-11-20 54 views
1

我有大約25組div容器與它的子容器共享相同的父/子類名稱,也有一個空的div容器爲每個組。jQuery .each()循環去野外

<div class="parent"> 
    <div class="child"> 
     child content1 
    </div> 
</div> 
<div class="empty"></div> 

<div class="parent"> 
    <div class="child"> 
     child content2 
    </div> 
</div> 
<div class="empty"></div> 

..... 

<div class="parent"> 
    <div class="child"> 
     child content25 
    </div> 
</div> 
<div class="empty"></div> 

我想每個 「孩子」 的div元素追加到 「空」 的div容器所以它看起來像:

<div class="parent"> 
    <div class="child"> 
     child content1 
    </div> 
</div> 
<div class="empty"> 
    <div class="child"> 
     child content1 
    </div> 
</div> 

<div class="parent"> 
    <div class="child"> 
     child content2 
    </div> 
</div> 
<div class="empty"> 
    <div class="child"> 
     child content2 
    </div> 
</div> 

.... 

<div class="parent"> 
    <div class="child"> 
     child content25 
    </div> 
</div> 
<div class="empty"> 
    <div class="child"> 
     child content25 
    </div> 
</div> 

我用下面的代碼:

$('.parent').each(function(){  
    $(this).find('div').appendTo('.empty'); 
}); 

但結果顯示「子」div元素&它的內容被循環到每個組的25次「空」div,即25x25 = 625個新的「子」divs!這是瘋狂的!!!!!!!!!!!!

有人可以幫忙嗎?!

+0

'.appendTo( '.empty')'匹配每個'.empty' div,這意味着你將每個子div添加到每個'.empty' div。 – zzzzBov

回答

0

This看起來像你想要什麼:

<div class="parent"> 
    <div class="child"> 
     child content1 
    </div> 
</div> 
<div class="empty"></div> 

<div class="parent"> 
    <div class="child"> 
     child content2 
    </div> 
</div> 
<div class="empty"></div>​ 

JS:

$('.parent').each(function() { 
    var parent= $(this); 
    var child = parent.children('.child'); 
    parent.next('.empty').append(child.clone()); 
});​ 
+0

是的,我相信這是正確的。我已經編輯了我的答案以遵循此實現,謝謝。 – Hacknightly

+0

它的工作原理!謝謝!我現在可以有一個很好的感恩節!你們也是! ;) – user1824996

2

可能它可能更好地處理.next()?

$('.parent').each(function(){ 
     var parent = $(this); 
     var child = parent.children('.child'); 
     parent.next('.empty').append(child.clone()); 
}); 

這裏有一個撥弄實施搞亂了一下後 - >http://jsfiddle.net/g9G85/8/

+1

我不認爲這段代碼有效。見http://jsfiddle.net/g9G85/8/ – user1824996

+0

你是對的,以前的版本沒有工作。我做了一些改動,但還沒有徹底測試過,對不起。 – Hacknightly

+1

欣賞你的努力,都變好!感恩節快樂! – user1824996