Myles Gray Myles Gray - 5 months ago 17
HTML Question

How do I clear the contents of a div without innerHTML = "";

I have a div that is filled by JS created DOM elements,

I want the div to be cleared upon the JS function repeating, however I have heard that using

document.getElementById('elName').innerHTML = "";
is not a good idea,

What is a valid alternative to doing this to clear the div's contents?

Answer

If you have jQuery then:

$('#elName').empty();

Otherwise:

var node = document.getElementById('elName');
while (node.hasChildNodes()) {
    node.removeChild(node.firstChild);
}