Tengo un problema en el siguiente fragmento de código.
for (var i=0;i<data.parlist.length;i++){ var inp = document.createElement("input") var label = document.createElement("label") var labelValue = document.createElement("label") var subDiv = document.createElement("div") var br = document.createElement("br") try{ var dBtn = document.getElementById(data.parlist[i].id); var dLabel = document.getElementById(data.parlist[i].id + " label") var dDiv = document.getElementById(data.parlist[i].id +" div"); var inprad = document.getElementById(data.parlist[i].id+" inp_rad"); var dLabelRad = document.getElementById(data.parlist[i].id + " label_rad") var dSubDiv = document.getElementById(data.parlist[i].id +" div_rad"); dSubDiv.replaceChild(inprad); dSubDiv.removeChild(dLabelRad); dDiv.removeChild(dSubDiv); dDiv.removeChild(dBtn); dDiv.removeChild(dLabel); myDiv.removeChild(dDiv); }catch{ console.log("no") }Este bucle for está dentro de una función que al hacer clic en un botón de una estación muestra los parámetros. De esta manera:


Lo que ven en las imágenes funciona, pero el problema que he venido a try de aclarar es que cuando pulso el botón por ejemplo como estación 1 aparece en la imagen y luego pulso el botón por ejemplo de estación 2 el intento que es se supone que debe eliminar los parámetros anteriores con removeChild no funciona, los parámetros de la estación 1 permanecen en el div y los parámetros de la estación 2 se agregan debajo de estos en lugar de eliminarse

Dentro del try hay un problema pero no se que es, digo esto porque cuando reviso la pagina y abro la consola me sale el mensaje que deje en el catch un "no"

Gracias por leer mi problema y cualquier sugerencia es bienvenida ya que estoy desesperado por encontrar una solución.
Debe pasar 2 entradas a la función replaceChild .
parentNode.replaceChild(newChild, oldChild);Aquí hay algunos consejos adicionales
try { ... } catch (err) { console.log(err); }data.parlist y si se implementa correctamente.