1821 votes

Comment faire pour déplacer un élément en un autre élément?

Je voudrais déplacer un élément DIV à l'intérieur de l'autre. Par exemple, je veux déplacer ce (y compris les enfants):

<div id="source">
...
</div>

dans ce:

<div id="destination">
...
</div>

de sorte que j'ai ceci:

<div id="destination">
  <div id="source">
    ...
  </div>
</div>

1868voto

Andrew Hare Points 159332

Vous souhaitez utiliser l' appendTo fonction de:

$("#source")
    .appendTo("#destination");

968voto

Alejandro Illecas Points 1891

ma solution:

DÉPLACER:

jQuery("#NodesToMove").detach().appendTo('#DestinationContainerNode')

COPIE:

jQuery("#NodesToMove").appendTo('#DestinationContainerNode')

remarque .detach (). Lors de la copie soyez prudent de ne pas répéter des id.

110voto

kjc26ster Points 851

J'ai juste utilisé:

$('#source").prependTo('#destination");

Qui j'ai attrapé à partir de: http://www.elated.com/articles/jquery-removing-replacing-moving-elements/

99voto

sbaaaang Points 7809

Ajouter

si l' div où vous voulez mettre votre element a contenu à l'intérieur, et vous voulez que l' element montrer after the main content d'utilisation:

  $("#element").append($("#other_element"));

Ajouter

si l' div où vous voulez mettre votre element a contenu à l'intérieur, et vous voulez montrer l' element before the main content d'utilisation:

$("#element").prepend($("#other_element"));

Mettre à l'intérieur et remplacer le contenu

si l' div où vous voulez mettre votre element has NO content vous pouvez utiliser les deux append() ou prepend() mais vous pouvez l'utiliser au mieux:

$("#element").html("<div> my div will be putted inside #element </div>");

Le clonage , puis ajouter, ajouter, mettre à l'intérieur

si vous souhaitez clone un element et prepend ou append ou put qu'à l'intérieur de remplacer le contenu, vous pouvez d'abord faire:

var _elementClone = $("#element").clone(); 

ou

var _elementClone = $("#element").html();

ensuite, vous pouvez choisir de :

$("#mydiv").html(_elementClone); //this will replace #mydiv content with the element cloned

$("#mydiv").append(_elementClone); //this will append cloned element to the #mydiv content

$("#mydiv").prepend(_elementClone);//this will prepend cloned  element to the #mydiv content

38voto

Subrahmanyam Points 51

Vous pouvez utiliser:

Pour Insérer Après,

jQuery("#source").insertAfter("#destination");

Pour Insérer à l'intérieur d'un autre élément,

jQuery("#source").appendTo("#destination");

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X