0

この div のクローン作成にどれだけ近づいているのか疑問に思っていましたが、この段階で何をしているのかについてはあまり考えていません。助けが必要です。

またはjqueryを使用する必要があります

<div id="question20">20. Details of Children
    <br>Family Name
    <input type="text" name="children" class="textbox">
    <br>Given Names
    <input type="text" name="children" class="textbox">
    <br>Sex
    <input type="text" name="children" class="textbox">
    <br>Date of Birth
    <input type="text" name="children" class="textbox">
    <br>Country of Birth
    <input type="text" name="children" class="textbox">
    <br>
    <script>
        function cloning() {
            var container = document.getElementById("mydiv");
            var clone = document.getElementById("question20_0").cloneNode(true);
            clone.setAttribute('id', 'div_' + document.getElementById("mydiv").getElementsByTagName("question20").length);
            container.appendChild(clone);
    </script>
</div>
<input type="button" value="Press This" onclick="cloning()">
4

4 に答える 4

1

以下のコードを実行します。

<div id="mydiv">
    <div id="question20">
        20. Details of Children<br>
        Family Name<input type="text" name="children" class="textbox"><br>
        Given Names<input type="text" name="children" class="textbox"><br>
        Sex<input type="text" name="children" class="textbox"><br>
        Date of Birth<input type="text" name="children" class="textbox"><br>
        Country of Birth<input type="text" name="children" class="textbox"><br>

    </div>
</div>
<input type="button" value="Press This" onclick="cloning()">
<script>
function cloning() {
    var container = document.getElementById("mydiv");
    var clone = document.getElementById("question20").cloneNode(true);
    clone.setAttribute('id','div_'+document.getElementById("mydiv").getElementsByTagName("div").length);
    container.appendChild (clone);
}
</script>

これらは間違いでした、

  • }あなたは機能のために逃した
  • あなたはquestion20_0代わりに言及しましたquestion20
于 2013-08-29T06:41:28.233 に答える
0

私はあなたがやりたいと思うことをするためにあなたのコードを更新しました。あなたが間違っていたことについてのコメントでここに示されているのを見つけることができます: http://jsfiddle.net/v876k/1/

コメントが削除された機能コードは次のとおりです。

<script>
function cloning() {
    var container = document.getElementById("mydiv");
    var clone = document.getElementById("question20").cloneNode(true);
    clone.setAttribute('id', 'div_' + container.childNodes.length);
    container.appendChild(clone);
}
</script>

<div id="question20">20. Details of Children
    <br>Family Name
    <input type="text" name="children" class="textbox">
    <br>Given Names
    <input type="text" name="children" class="textbox">
    <br>Sex
    <input type="text" name="children" class="textbox">
    <br>Date of Birth
    <input type="text" name="children" class="textbox">
    <br>Country of Birth
    <input type="text" name="children" class="textbox">
    <br>
</div>

<input type="button" value="Press This" onclick="cloning()">

<div id="mydiv">
</div>
于 2013-08-29T06:47:20.740 に答える
0

jQuery で .cloneNode() 関数を使用する必要があります。

http://api.jquery.com/clone/

于 2013-08-29T06:49:51.110 に答える