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

389
Visualizações
¿Cómo muestro la fecha de entrada HTML al hacer clic en el texto o una imagen?

Quiero que aparezca un selector de fecha cuando hago clic en un texto o una imagen. Estoy usando reactjs. Estoy usando el input type="date" no la biblioteca React-datepicker.

Aquí está mi código:

 import { useRef } from "react"; const add = () => { const interviewDateRef = useRef(); const handleInterviewDateClick = () => { interviewDateRef.current.focus(); }; return ( <> <button onClick={handleInterviewDateClick}>Change Date</button> <input type="date" ref={interviewDateRef} className="hidden" /> </> ); }; export default add;

Aquí está el codeandbox .

Quiero que el selector de fechas funcione normalmente, pero también que aparezca al hacer clic en un texto o una imagen. ¿Cómo puedo hacer eso?

Gracias.

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Puede lograr hacer esto abriendo el menú desplegable en el enfoque. Desde hacer clic en el botón, enfoque la entrada.

Aquí está cómo hacerlo

 // Get a hook function const {useRef} = React; const Add = () => { const interviewDateRef = useRef(); const handleInterviewDateClick = () => { interviewDateRef.current.focus(); }; return ( <div> <button onClick={handleInterviewDateClick}>Change Date</button> <input type="date" ref={interviewDateRef} className="hidden" /> </div> ); }; // Render it ReactDOM.render( <Add />, document.getElementById("react") );
 .input-container input { border: none; box-sizing: border-box; outline: 0; padding: .75rem; position: relative; width: 100%; } input[type="date"]::-webkit-calendar-picker-indicator { background: transparent; bottom: 0; color: transparent; cursor: pointer; height: auto; left: 0; position: absolute; right: 0; top: 0; width: auto; }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/react/17.0.1/umd/react.production.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/17.0.1/umd/react-dom.production.min.js"></script> <div id="react"></div>

Consulte esta respuesta SO para obtener más información

over 4 years ago · Santiago Trujillo Relatório

0

Creo que no hay necesidad de reaccionar JS si está utilizando la fecha de tipo de entrada, entonces automáticamente cuando hace clic en ella, aparece la fecha en una ventana de selección que puede editar con CSS

over 4 years ago · Santiago Trujillo Relatório

0

El elemento de etiqueta puede hacer exactamente lo que está buscando sin ningún javascript adicional. Siempre que la label for ( htmlFor en React) esté vinculada a la identificación de la entrada o la entrada esté anidada en la label , debería abrir el calendario. Sin embargo, puede haber algunas diferencias entre navegadores aquí.

 <> <label htmlFor="input-id">Change Date</button> <input id="input-id" type="date" /> </>
over 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