Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

155
Vistas
creo que el código es el mismo pero no sé por qué da resultados diferentes

¿Por qué el código hace una salida diferente y es casi la misma entrada? Aporte:

 var Add = document.getElementById('AddElement'); //the button var Element = document.getElementById('element'); // the input text var ListParent = document.querySelector('ul'); Add.addEventListener('click', function(){ var AddText = document.createElement('li').appendChild(document.createTextNode("hello")); ListParent.appendChild(AddText); })

Producción:

primer clic: hola

segundo clic: hola hola

 Input:
 var Add = document.getElementById('AddElement'); var Element = document.getElementById('element'); var ListParent = document.querySelector('ul'); Add.addEventListener('click', function(){ var AddText = document.createElement('li'); AddText.appendChild(document.createTextNode('hello')); ListParent.appendChild(AddText); })

Salida: primer clic:

  • Hola

segundo clic:

  • Hola
  • Hola
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

appendChild devuelve el nodo adjunto:

 const div = document.createElement('div'); const parent = document.createElement('div'); const result = parent.appendChild(div); console.log(result === div);

Así que cuando lo hagas

 var AddText=document.createElement('li').appendChild(document.createTextNode("hello")); ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

El valor puesto en addText es el nodo de texto creado. En contraste con

 var AddText = document.createElement('li');

es el <li> , no el nodo de texto.

Entonces, con el primer enfoque, el <li> creado no se usa (y probablemente no sea lo que desea).

Si desea usar el <li> y reducir su código, asigne el .textContent del <li> en su lugar.

 Add.addEventListener('click', function(){ ListParent.appendChild(document.createElement('li')) .textContent = element.value; })
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda