2017-06-16 11 views
0

**私は同様の質問を見ましたが、私に近い解決策を提供していません。 新しい<div class="container" id="section"style="border: 1px solid grey;">を追加し、すべてのテーブルとフィールドはボタンクリックでdivを保持します。 次のコードで追加しようとしています。ボタンをクリックすると新しいdivが追加されます

function run() { 

    var div = document.createElement("div"); //create new div 
    div.addEventListener("click", run); //bind click to new div 
    this.appendChild(div); //append the new div to clicked div 
    this.removeEventListener("click", run); //remove the original click event 

} 
document.getElementById("section").addEventListener("click", run); 

誰でもこの問題を解決するのに手伝ってください。 ありがとうございます。赤い四角の内側

+0

私は、文字列変数にHTMLを割り当て、ボタンがクリックされたときにちょうどのdivにそれを追加をお勧めします - 申し訳ありませんが、私はより多くの助けにすることはできません、私は私が知っているjQueryを扱うのは単なるJSの拡張ですが、もっと使うほど、伝統的なjsを忘れるxD – ThisGuyHasTwoThumbs

+0

このコードを追加してください。document.getElementById( "section").. removeEventListener( "click"、run); 'の代わりに' this.removeEventListener( "クリック"、実行); //元のクリックイベントを削除する ' –

答えて

0

クリック)

function run() { 
 

 
    var div = document.createElement("div"); //create new div 
 
    div.addEventListener("click", run); //bind click to new div 
 
    this.append(div); //append the new div to clicked div 
 
    this.removeEventListener("click", run); //remove the original click event 
 

 
} 
 
document.getElementById("section").addEventListener("click", run);
div{ 
 
border: 4px solid red; 
 
padding: 4px; 
 
}
<button id="section">run</button>

+0

あなたの時間をありがとう。これは私が探しているものではありません。 テーブルを考えてみましょう。私はここに私のフィドルを追加しています。 https://jsfiddle.net/9qene19o/ divの全体をクリックすると「Add Section」というボタンがあります。 – Maverick

0

私が正しくあなたを理解していれば、あなたはボタンクリックでその子供を含むセクション全体を()クローンとオリジナルの下にそれを追加したいです。

cloneNode(true)で行うことができますが、フィールド名(入力のものなど)はすべてコピーされることに注意してください。

container.appendChild(sourceNode.cloneNode(true))

document.getElementById("newsectionbtn").onclick = function() { 
 
    var container = document.getElementById("container"); 
 
    var section = document.getElementById("mainsection"); 
 
    container.appendChild(section.cloneNode(true)); 
 
}
section { border:1px solid #ddd; }
<div id="container"> 
 
    <button id="newsectionbtn">+New Section</button> 
 
    <section id="mainsection"> 
 
    <table> 
 
     <thead> 
 
     <tr> 
 
     <th>Field 1</th> 
 
     <th>Field 2</th> 
 
     </tr> 
 
     </thead> 
 
     <tbody> 
 
     <tr> 
 
      <td><input type="text" name="f1" /></td> 
 
      <td><input type="text" name="f2" /></td> 
 
     </tr> 
 
     </tbody> 
 
    </table> 
 
    </section> 
 
</div>

関連する問題