0

複製された要素のIDの設定に関して問題があります。

最初に、単一の要素を持つ部分ビュー [mypartialview.cshtml] があります

@model mydata

@{
Layout = null;
}
 @Html.EditorFor(model => model.Details,"","supp_int_mat_det")

今私のページにプロトタイプがあります

<div id="simtemplate" style="display: none">

    @Html.Partial("mypartialview", new mydata())

</div>

そして、私はこのコードをjavascriptクリックコードで書いています

 function addsupp() {
    var component = "simtemplate";
    var idiv = $("#simtemplate").clone(); //.html();
    idiv.removeAttr("style");

    var newid = "CompetencyParts[" + counter + "]";
    counter = counter + 1;

    if (previd == "") {
        previd = newid;
    }
    var fdiv = idiv.find("#supp_int_mat_det");
    fdiv.addClass("ckeditor");
    fdiv.attr("name", newid);
    fdiv.attr("id", newid);

    $("#panel").append(idiv);

    var html = '';
    var config = { width: 400, height: 200 };
   // CKEDITOR.replace(newid);


}

最初のクローン要素の ID の設定に成功しました 2 番目以降のクローン要素の ID は同じです 最初の要素 ここに画像の説明を入力 はなぜこれが起こっているのか教えてもらえますか?

4

1 に答える 1

0

わかった。実際、divのIDを変更するのを忘れました。追加すると、「simtemplate」の複製になり、後でクローンを作成すると、この複製されたdivが複製されます。複製されたdivには元の要素(simtemplateで見つかったもの)が含まれていないため、IDは次のようになります。変更されていません。このコード行を追加すると、私の問題は解決しました。

var idiv = $("#lessonplan").clone(); //.html();
    idiv.removeAttr("style");

    var divid = "lessonplan" + getdivcount();

    idiv.attr("name", divid);
    idiv.attr("id", divid);
于 2013-02-26T10:25:32.107 に答える