JS で作成された DOM 要素で埋められた div があります。
JS 関数の繰り返しで div をクリアしたいのですが、使用するdocument.getElementById('elName').innerHTML = "";
のは得策ではないと聞きました。
div の内容をクリアするためにこれを行う有効な代替手段は何ですか?
JS で作成された DOM 要素で埋められた div があります。
JS 関数の繰り返しで div をクリアしたいのですが、使用するdocument.getElementById('elName').innerHTML = "";
のは得策ではないと聞きました。
div の内容をクリアするためにこれを行う有効な代替手段は何ですか?
jQueryをお持ちの場合:
$('#elName').empty();
さもないと:
var node = document.getElementById('elName');
while (node.hasChildNodes()) {
node.removeChild(node.firstChild);
}
プロトタイプの方法はElement.update()
次のとおりです。
$('my_container').update()
jQuery を使用している場合は、.empty()
メソッドhttp://api.jquery.com/empty/をご覧ください。
その子をループして削除することができます。
var parDiv = document.getElementById('elName'),
parChildren = parDiv.children, tmpChildren = [], i, e;
for (i = 0, e = parChildren.length; i < e; i++) {
tmpArr.push(parChildren[i]);
}
for (i = 0; i < e; i++) {
parDiv.removeChild(tmpChildren[i]);
}
または.empty()
、jQuery を使用している場合に使用します。これは単なる代替ソリューションであり、while
ループははるかにエレガントです。