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

238
Vistas
El evento onClick no funciona con la etiqueta de opción en React

El evento onClick no funciona con la etiqueta <option> . Cómo usar el evento onClick con la etiqueta de opción de selección. A cada opción se le debe dar un parámetro diferente.

 async function localization(language) { localStorage.setItem("language", language); } useEffect(() => { localization(localStorage.getItem("language")); }, []); return( <select> <option onClick={() => localization("ru")}> <RussinFlagIcon /> Ru </option> <option onClick={() => localization("uz")}> <UzbekistanFlagIcon /> Uz </option> <option onClick={() => localization("en")}> <UKFlagIcon /> En </option> </select> )
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Use onChange en su lugar, así es como debería trabajar cuando se trata de <select> . Puedes hacer algo como esto:

Observe el atributo de value en <option> . El valor de la opción seleccionada será el valor de <select> .

 return( <select onChange = {(e)=> localization(e.target.value)}> <option value = "ru"> <RussinFlagIcon /> Ru </option> <option value= "uz"> <UzbekistanFlagIcon /> Uz </option> <option value="en"> <UKFlagIcon /> En </option> </select> )
about 4 years ago · Juan Pablo Isaza Denunciar

0

Normalmente, la selección se usa con un [formulario][1], luego debe usar la devolución de llamada onChange:

 const Select = () => { const handleChange = (e) => localStorage.setItem("language", e.target.value); return ( <label> <select name="languages" onChange={handleChange}> <option onClick={() => localization("ru")}> <RussinFlagIcon /> Ru </option> <option onClick={() => localization("uz")}> <UzbekistanFlagIcon /> Uz </option> <option onClick={() => localization("en")}> <UKFlagIcon /> En </option> </select> </label> ); };

Luego algunos comentarios sobre su código:

  • async function localization no tiene que ser asíncrona si no tiene una Promesa en ella.
  • Y su useEffect no hace mucho excepto almacenar el idioma en localStorage basado en el valor localStorage... [1]: https://www.w3schools.com/TAGS/att_select_form.asp
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