Atualmente, estou tentando encontrar o pai de um pai de um elemento. Tenho um link sendo clicado que está em um <td>
e gostaria de obter o <tr>
objeto.
Por que "$ (this) .parent (). Parent ()" não funciona? O que irá?
Obrigado,
brendan
Edit: Parece que um erro na minha sintaxe estava atrapalhando tudo. "$ (this) .parent (). parent ()" de fato funciona, mas acabei optando por $ (this) .closest ('tr') "porque parece a solução mais eficiente.
javascript
jquery
bloudermilk
fonte
fonte
Respostas:
A melhor maneira provavelmente seria usando
closest
:Confira a documentação :
fonte
Deve funcionar. Você também pode tentar $ (this) .parents (tag), onde tag é a tag que você deseja encontrar.
Por exemplo:
Vai encontrar o tr mais próximo "acima da cadeia".
fonte
Isso deve funcionar ... você pode tentar
O .parents (seletor) diz obter todos os ancestrais que correspondem ao seletor
e: eq (1) diz encontrar o oneth (indexado por zero, portanto o segundo) elemento na lista
fonte
Este snippet já teve um desempenho para mim no passado:
Poste algum código para nós para ver se pode haver outro problema em algum lugar ...
fonte
$(this).parent().parent()
sem problemastente também
fonte
Se você tiver qualquer tipo de id / classe para os pais, você pode usar pais (), mas isso fará com que todos os pais se ocupem do <corpo>, a menos que você filtre () ou pare de alguma outra forma como
Espero que isso ajude alguém :)
fonte
Tente envolver $ (this) .parent () em um objeto jQuery como $ ($ (this) .parent ()). Freqüentemente, encontro a necessidade de fazer isso para ter certeza de que tenho um objeto jquery válido. A partir daí, você poderá entrar em contato com os pais, ou talvez usando o prev ().
fonte
fonte
.closest()
nem sempre é a melhor opção, especialmente quando você tem a mesma construção de elemento.Você pode ser pai de um dos pais e é muito fácil:
etc.
fonte