web-dev-qa-db-ja.com

divのコンテンツを別のdivにクローンする方法

Jquery cloneを使用して、選択したdivのコンテンツを別のdivにコピーします。しかし、私はどこにも追加したくない

つまり、jqueryでdivのクローンを作成するとき(間違っている場合は修正してください)、その位置を設定する必要があり、表示される新しい部門を動的に作成します。

しかし、私は選択したdivのコンテンツを取得し、それを別のプリセットdivにコピーしたい

27
pahnin
var a = $('#selector').html();
var b = $('#selector').html(a);

私はあなたを適切に理解したかどうかわかりませんが、それはあなたが意味したことだと思います:)

53
Val

私は同意しません。クローンは、コンテンツに適用せずにデータを保存できます。

ここを見て:

http://www.jsfiddle.net/dactivo/FqffM/

var mylayer=$('.hello').clone();

ここでは、変数「mylayer」を必要に応じて管理できますが、DOMにはありません。

10
netadictos
$("#from").clone().appendTo($("#to"));

ただし、メインDIVは削除/非表示されません。メインdivを非表示にするには、次を実行します。

$("#from").clone().appendTo($("#to"));
$("#from").remove();
6
Arvind Bhardwaj
$(".from").click(function () {
     $(".from").removeClass("CloneMe");
     $("#to").html('');
     $(this).addClass("CloneMe");
     $(".CloneMe").clone().appendTo("#to");

});

クリック(または他のイベント)時に、複製するようにハードコーディングされたクラスを追加できます。この例には、スタイル付きコンテンツ(divなど)を含む同じクラス名のリストがあります。CloneMeクラスを追加しますが、ユーザーが別のアイテムを選択した場合に最初にそのクラスを削除してdivを空にします。 )htmlも安全に削除します。次に、(this)を使用してクラスを適用し、そのクラス名を持つすべてのアイテムを取得しないようにして、最後にdivに追加します。その結果、ユーザーはそのクラス名を持つ任意のアイテムを選択し、コンテナに入力できます。 -コンテナのクラスを使用すると、複数の場所にデータを入力できると思います。


4
Andrew Conniff