2010-04-02 7 views
2

Je suis en train d'insérer un div dans un autre div en utilisant add() de jquery, mais il ne fonctionne pasComment ajouter divs dans un div en utilisant jquery

<div class="column" id="col1"> 
    <div class="portlet" id="panel1"> 
     <div class="portlet-header">1.Feeds</div> 
     <div class="portlet-content">Lorem ipsum dolor sit amet, consectetuer adipiscing elit</div> 
    </div> 
    <div class="portlet" id="panel2"> 
     <div class="portlet-header">2.News</div> 

     <div class="portlet-content">Lorem ipsum dolor sit amet, consectetuer adipiscing elit</div> 
    </div> 
</div> 

<div class="column" id="col2"> 
    <div class="portlet" id="panel3"> 
     <div class="portlet-header">3.Shopping</div> 
     <div class="portlet-content">Lorem ipsum dolor sit amet, consectetuer adipiscing elit</div> 
    </div> 
</div> 

En fait panel1 et panel2 sont dans un div, et panel3 est à l'intérieur d'un autre div.Je veux supprimer panel3 de son div et le placer entre panel1 et panel2 dans leur div.

Répondre

4

Vous pouvez le faire en utilisant comme ceci .insertAfter():

$("#panel3").insertAfter("#panel1");​​​​​​​​​​​​​​ 

Cela fait que vos états de question, prend panel3 et le place entre panel1 et panel2.

0

Utilisez appendTo qui ajoutera divs à un div existant ... Mais si vous voulez insérer entre deux divs utilisent after() et before()

Donnez le principal div un identifiant et dire MainDiv utiliser urdiv.appendTo("MainDiv");

$("#panel2").before("#panel3"); 
+0

Cela colle le texte littéral '" # # panel3 "' entre les deux div ... '.before()' ne prend pas un sélecteur, il prend du texte ou html :) –

+0

@Nick je pense 'insertafter()' est le mieux adapté dans ce cas, comme indiqué par l'affiche de la question. –

0

Vous pouvez utiliser after()

$("#panel1").after($("#panel3")); 
Questions connexes