Supprimer tous les nœuds enfants
Comment faire pour supprimer tous les nœuds enfants de <div id="test"></div>
à l'aide de Dojo ou de la plaine JavaScript?
double possible de Supprimer tous les enfants des éléments du DOM en div></a >
Cela peut aussi aider: stackoverflow.com/questions/4401278/...
Cela peut aussi aider: stackoverflow.com/questions/4401278/...
OriginalL'auteur Damir | 2011-03-23
Vous devez vous connecter pour publier un commentaire.
dojo.empty(node)
va supprimer tous les enfants à partir du nœud, tout en gardant le nœud.dojo.destroy(node)
va supprimer tous les enfants à partir du nœud, puis supprime le nœud de son parent.OriginalL'auteur Stephen Chung
Alors qu'il est tentant d'utiliser la el.innerHTML = "", et en général, cela fonctionne, une approche correcte serait:
La raison pour cela est parce que IE déteste vraiment de manipulation de la table avec innerHTML (c'est documenté quelque part dans MSDN).
EDIT: trouvé la référence MSDN: http://msdn.microsoft.com/en-us/library/ms532998%28v=vs.85%29.aspx#TOM_Create
hasChildNodes()
est un peu plus facile à lire de l'OMI.Je suis d'accord, nettoyé de cette place un peu
OriginalL'auteur jordancpaul
ici est ce que vous avez besoin de:
dojo.empty("someId");
OriginalL'auteur MiPnamic
cependant, potentiellement dangereux. Cela ne fonctionnera pas avec des tables dans IE
pas de de votre pas droit, je l'ai testé avec IE suis capable de supprimer tous les nœuds enfants de la Div.
Je soupçonne que vous n'avez pas testé cette complètement. Tel que rapporté par microsoft de la documentation sur MSDN: "en raison de la structure spécifique requis par les tables, les innerText et innerHTML les propriétés de la table et des tr objets sont en lecture seule. Pour insérer des lignes et des cellules, de modifier le contenu et les attributs de la table, ou redimensionner les éléments de la table, vous devez utiliser le DOM." En d'autres termes, à s'appuyer sur
el.innerHTML = ""
peut être dangereux si vous ne le comprennent pas entièrement.Depuis Internet Explorer 9, vous pouvez utiliser le DOM du W3C propriété textContent de travail avec tous les principaux navigateurs
OriginalL'auteur Lalchand
Vous pouvez utiliser le DOM du W3C propriété textContent comme un remplacement pour Microsoft non-standard innerHTML/innerText, il fait partie de la DOM3 et soutenue par tous les principaux navigateurs, y compris Internet Explorer depuis la version 9 http://www.w3schools.com/jsref/prop_node_textcontent.asp
Mise à jour: innerHTML/innerText fait désormais partie de la norme HTML5
OriginalL'auteur baptx