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

214
Vistas
¿Cómo separar el evento "presionar la tecla" del evento "hacer clic con el mouse" para evitar el envío cuando se presiona la tecla?

Tengo el enlace del formulario de "chips" que puede ver en la imagen adjunta aquí y quiero crear una condición, como si alguien presiona "Enter", puede notar el elemento agregado, pero lo que sucede aquí es que el formulario envía los datos al backend.

descripción de la imagen aquí

Intenté muchas veces modificar el comportamiento usando el "evento", pero no funcionó, puedes ver los enfoques con los que me quedé:

Enfoque1:

 // input to submit job const submit_job = document.getElementById("submit-job"); submit_job.onclick = (e) => { e.preventDefault(); if (e.key !== "") { console.log(e.currentTarget) } else if (e.pointerType === "mouse") { submit_job.onsubmit = () => { return true } } }

// Este enfoque no funcionará porque descubrí que "e.key" solo funcionaba al escribir con el teclado

Enfoque 2:

 function getEventType(event) { if (event.type === "keydown") { event.preventDefault(); } } submit_job.addEventListener('keydown', getEventType, true); submit_job.addEventListener('click', getEventType);

Entonces, ¿alguna ayuda en ese problema, por favor?

Nota:

No es necesario ver el código completo porque el código funciona bien, pero cuando lo coloco en el formulario, ocurre este problema, por lo que puede inspirarme usando esa variable solo "submit_job" en su respuesta.

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

0

Su implementación del envío del formulario no parece una buena idea. No debe evitar que los usuarios envíen el formulario cuando presionen "Enter". Al hacer clic en "Entrar" debería activarse el envío de un formulario, que es común para la mayoría de los formularios. ¿Por qué no agregar un botón único al lado del campo de entrada que, cuando se hace clic, permite al usuario ingresar una nota o texto? Si adopta su enfoque actual, los usuarios solo podrán enviar haciendo clic en el botón Enviar, lo cual es una mala práctica. Sugiero crear un botón adicional y agregar un controlador de eventos a ese botón para que tenga un botón que agregue notas cuando se haga clic, de modo que presionar "Entrar" no entre en conflicto con lo que está tratando de lograr.

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