6

私は次のセットアップを持っています

<div class="article-content">
    <div class='editors' id="mine">
        <h2>My Text</h2>
        <textarea name="my_text" id="my_text" class="my_test"></textarea>
    </div>
    <div class='editors' id="termsy_master" style="display:none;">
        <h2>title</h2>
        <textarea name="" id="" class="sm">text</textarea>
        <textarea name="" id="" class="di">text</textarea>
    </div>
</div>

しようとしています

  • クローン「termsy_master」
  • IDを「彼」に変更
  • h2 タイトルを「新しいタイトル」に変更します
  • textarea sm id を "sm_new_id" に
  • textarea di id を「di_new_id」に
  • 表示なしを削除して、表示されるようにします
  • それを article-content に追加します

私はすでに次のことを行っていますが、続行する方法がわかりません

$('.article-content').append($("#termsy_master").clone());
4

2 に答える 2

18
$tmc = $("#termsy_master").clone().attr('id', 'his').show();
$("h2", $tmc).text('new title');
$(".sm", $tmc).attr('id', 'sm_new_id');
$(".di", $tmc).attr('id', 'di_new_id');
$tmc.appendTo(".article-content");

もちろん、それを行う方法はたくさんありますが、これは多かれ少なかれ最も簡単なようです。考えすぎないでください!

于 2012-05-12T20:38:09.510 に答える
3

考えられる解決策の 1 つを次に示します。

var block = $("#termsy_master"​).clone();
block.children("h2").text("new title");
block.children(".sm").attr("id", "sm_new_id");
block.children(".di").attr("id", "di_new_id");
block.attr("id", "his").show().appendTo(".article-content");​

デモ: http://jsfiddle.net/8pxPC/


または、1行でそれを好む場合:)

$("#termsy_master").clone().attr("id", "his").show().appendTo(".article-content").children("h2").text("new title").siblings(".sm").attr("id", "sm_new_id").siblings(".di").attr("id", "di_new_id");​
于 2012-05-12T20:41:17.640 に答える