En los bucles for, estoy asignando una función a un botón de cierre que esencialmente eliminará una etiqueta de marca de algún texto.
for (q = 0; q < json_response.trainer.annotation.length; q++) { let close_ = document.getElementById(`cl_${x3}_${q}`); console.log(close_) close_.onclick = function () { delete_ent(this); }; }; function delete_ent($this) { let all_text = $this.parentNode.parentNode.innerHTML; console.log($this, $this.parentNode); let test1 = $this.parentNode.innerHTML; let replace_text = test1.split("<span>"); // console.log(replace_text[0]); let updated_text = all_text.replace(`${$this.parentNode.outerHTML}`, `${replace_text[0]}`); $this.parentNode.parentNode.innerHTML = updated_text; }Funciona exactamente como se esperaba para la primera etiqueta de marca eliminada, pero luego de actualizar el texto, los otros botones de cierre dejan de funcionar.
Esto es para una extensión de Chrome.