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

138
Visualizações
Mostrar diferentes imágenes en la misma página web

Estoy tratando de que cada div muestre una imagen cargada diferente, pero cuando intento cargar una imagen con el segundo div, cambia la imagen del primer div y no le sucede nada al segundo div.

 <div class="user-img">
 <img src="./images/image.jpg" alt="Avatar" id="photo">
 <input type="file" id="file" accept="image/*">
 <label for="file" id="uploadbtn"><i class="fas fa-camera"></i></label>
</div>
<div class="user-img">
 <img src="./images/image.jpg" alt="Avatar" id="photo">
 <input type="file" id="file" accept="image/*">
 <label for="file" id="uploadbtn"><i class="fas fa-camera"></i></label>
</div>
<script>
 const img = document.querySelector('#photo');
 const file = document.querySelector('#file');

 file.addEventListener('change', function(){
 const chosenFile = this.files[0];
 if(chosenFile){
 const reader = new FileReader();
 reader.addEventListener('load', function(){
 img.setAttribute('src',reader.result);});
 reader.readAsDataURL(chosenFile);
 }
});
</script>
almost 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

No puede tener dos elementos con el mismo ID de archivo y foto. Las identificaciones deben ser únicas. En este caso, debería utilizar clases en su lugar.

Luego use document.getElementsByClassName() para recibir una matriz de elementos que puede iterar y agregar el detector de eventos a los elementos del archivo.

almost 4 years ago · Santiago Trujillo Relatório

0

Cambie sus elementos <img> para usar nombres de clase, en lugar de ID. Ex:

 <img src="./images/image.jpg" alt="Avatar" class="photo">

Luego tome sus imágenes usando una llamada document.getElementsByClassName() como la siguiente

 const imgs = document.getElementsByClassName('photo');

Luego puede recorrer la matriz imgs y establecer el atributo src, así

 imgs.forEach((img) => {
 img.setAttribute('src', reader.result);
});
almost 4 years ago · Santiago Trujillo 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