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

260
Visualizações
¿Cómo cambiar el color de fondo de th al hacer clic en reaccionar js?

Quiero cambiar el color de fondo de th cuando hago clic en tr . Este es mi código mínimo:

 props.params.map((item, i) => { return ( <> <tr key={i} onClick={() => attributeClicked(i) } > <th className={'a'+i}> <span>{ item.label }</span> </th> </tr> </> ) }) function attributeClicked (i: number) { document.getElementsByClassName(`a${i}`)[0].style.backgroundColor = "red!important"; }

Sin embargo, este código no funciona. Además, cuando paso el mouse sobre el style , aparece el error Property 'style' does not exist on type 'Element'.ts(2339)

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

0

Hola, mira este ejemplo usando ref para acceder al elemento y cambiar el color de la fuente o lo que quieras.

 import { createRef } from "react"; export default function App() { const renderTh = (data, index, ref) => { return ( <th ref={ref} key={index} onClick={() => redColor(ref)}> {data} </th> ); }; const redColor = (ref) => { if (!ref.current) return; ref.current.style.color = "red"; }; const dataSet = ["one", "two", "three"]; const refArray = []; return ( <div className="App"> <h1>Hello CodeSandbox</h1> <table> <thead> {dataSet.map((data, index) => { const ref = createRef(); refArray[index] = ref; return renderTh(data, index, ref); })} </thead> </table> </div> ); }

Editar matriz de referencia reaccionar

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