Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

192
Visualizações
error al cambiar el elemento en DOM usando vannilla JS

He creado un programa para cambiar un elemento en un HTML mientras se hace clic en un botón, pero genera un error

 <button id='change'>hi</button> <p id="pp">text</p> <script> var myfunction=function(e){ e.preventDefault(); document.getElementById('pp').innerHTML=<p id="pp">change</p> } document.getElementById('change').addEventListener('click',myfunction(e)) </script>

enlace de caja de códigos

https://codesandbox.io/s/bold-waterfall-90e74

about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

tienes 2 problemas uno es que está pasando el valor de retorno de myFunction a .addEventListener con el valor de e que no está definido. el otro es que no configuraste .innerHTML correctamente. No estoy seguro de si puede crear elementos HTML en JavaScript usando sintaxis HTML, pero si puede, está creando otro elemento <p> con la misma id . Además, .innerHTML debe ser una String y todos los atributos HTML deben tener comillas dobles. prueba esto:

 document.getElementById('change').addEventListener('click', function (e) { e.preventDefault(); document.getElementById('pp').innerHTML = "change"; })
 <button id="change">hi</button> <p id="pp">text</p>

Probablemente tampoco debería crear funciones con var functionName = function() {...} porque puede causar problemas de elevación. var también está en desuso y puede causar errores, por lo que recomendaría usar const y let .

about 4 years ago · Juan Pablo Isaza Relatório

0

arreglar esta cadena:

 document.getElementById('change').addEventListener('click', myfunction)
about 4 years ago · Juan Pablo Isaza Relatório

0

Le faltaban comillas alrededor del valor de innerHTML .

Al llamar a addEventListener , su EventListener es la function "myfunction". No tienes que llamarlo.

 <button id='change'>hi</button> <p id="pp">text</p> <script> var myfunction=function(e){ e.preventDefault(); document.getElementById('pp').innerHTML='<p id="pp">change</p>' } document.getElementById('change').addEventListener('click',myfunction) </script>

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda