Qual è il modo migliore per rimuovere un
da un che è stata creata usando appendChild?
-
20-09-2019
- |
-
-
20-09-2019 - |
Domanda
Sto generando dinamicamente caselle di testo utilizzando document.createElement ( 'input') e aggiungendo una pausa tra di loro utilizzando lo stesso metodo - quindi utilizzando .appendChild per aggiungere questo al mio div.
var box = document.getElementById("myDiv");
var inp = document.createElement('input');
inp.type = 'text';
// add attributes, etc...
box.appendChild(inp);
box.appendChild(document.createElement("br"));
posso cancellare queste caselle di testo utilizzando .removeChild e va bene, ma le pause sono ancora lì.
box.removeChild(document.getElementById(...));
La mia domanda è come faccio a rimuovere ciascuna delle pause che sono stati creati tra ciascuna delle caselle di testo?
Soluzione
var breaks = box.getElementsByTagName('BR');
for (var i = 0; i < breaks.length; i++) {
box.removeChild(breaks[i]);
}
Altri suggerimenti
Dovrebbe essere possibile rimuovere i regolamenti di base se si mantiene un riferimento a loro.
Questo dovrebbe funzionare:
var brRef = document.createElement("br");
...
box.removeChild(brRef);
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow