私は奇妙な問題を抱えています。私はdivをbodyの中に追加して削除するプログラムを作ろうとしています。 divを追加するには、document.getElementById("body").innerHTML
を使用します。追加はうまく動作します。しかし、削除関数では、 "body" idを変数に置き換えて、削除するdivのIDに置き換えます。しかし、コードを実行すると、 "innerHTMLをnullに設定できません"というエラーが表示されます。 id変数を固定ローカル変数に置き換えようとしましたが、うまくいきました。私も変数に引用符を追加しようとしましたが、どちらもうまくいきませんでした。 idを変更する変数に設定できない理由はありますか?ありがとう。正しいIDを取得するために削除しているときにi-1
を使用する必要がありますので、あなたはdiv要素を追加した後、私をインクリメントしているDivの最後の要素を削除する[JavaScript]
var i = 1;
function myFunction() {
var addDiv = document.getElementById("body2");
addDiv.innerHTML += "<div id = '" + i + "'><br><textarea id = '1' > foo < /textarea></div > ";
i++;
}
function myFunction2() {
var deleteDiv = document.getElementById(i);
deleteDiv.innerHTML = "";
i--;
}
<div id="body2">
<div id="0">
<textarea id="text">lol</textarea><button onclick="myFunction()">Add</button>
<button onclick="myFunction2()">Delete</button>
</div>
</div>
document.getElementById( "body")。innerHTMLをdocument.body.innerHTMLに短縮することができます。https://developer.mozilla.org/en-US/docs/Web/API/Document/body – Orangesandlemons
生の数値をIDとして使用することは実際には推奨されていません(ページ全体で一意でなければなりません)。 'id = 'myprefix _" + i + "'' – Kaddath