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

222
Visualizações
Javascript: ¿cómo puedo seleccionar qué elemento disparó un evento?

Usando el código de muestra de W3schools, estoy tratando de configurar un solo controlador de eventos que se activará cuando se cambie cualquiera de los múltiples elementos de 'entrada' en un formulario.

Lo que quiero es recibir el parámetro de nombre <input name=xxxx> Según tengo entendido, p1 y p2 deben contener el evento y el nombre del campo <input name=xxxx> que activó el evento. En su lugar, aparece un error de referencia, "p1 no está definido" del controlador de eventos. En la búsqueda, encontré muchas soluciones complicadas a esta pregunta, algunas de las cuales no entiendo, pero ninguna que realmente resuelva mi problema. ¿Qué estoy haciendo mal?

 function field_check(event) { var the_input = event.target.id; alert("field_check: event was: " + event + "\nand the entry field was: " + the_input); } document.getElementById("add_data").addEventListener("change", field_check);
 input { background-color: lightblue; } input:focus { background-color: yellow; }
 <form name=add_data id=add_data> <input type="text" class="ship" name="fname" id="fname" autofocus><br \> <input type="text" class="ship" name="lname" id="lname" required><br /> <input type="text" class="ship" name="addr1" id="addr1"><br /> <input type="text" class="ship" name="addr2" id="addr2"><br /> <input type="text" class="ship" name="city" id="city"><br /> <input type="text" class="ship" name="p_code" id="p_code"> </form>

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

0

quieres hacer

 var s = document.getElementById("add_data"); s.addEventListener("change", function(event) { field_check(event, event.target.name); });

o incluso más simple

 document.getElementById("add_data").addEventListener("change", field_check);

y tiene

 function field_check(event) { console.log(event.target.name); } 

 function field_check(event) { console.log(event.target.name); } document.getElementById("add_data").addEventListener("change", field_check);
 input { background-color: lightblue; } input:focus { background-color: yellow; }
 <form name=add_data id=add_data> <input type="text" class="ship" name="fname" id="fname" autofocus><br \> <input type="text" class="ship" name="lname" id="lname" required><br /> <input type="text" class="ship" name="addr1" id="addr1"><br /> <input type="text" class="ship" name="addr2" id="addr2"><br /> <input type="text" class="ship" name="city" id="city"><br /> <input type="text" class="ship" name="p_code" id="p_code"> </form>

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