javascript - hasclass - obtener el primer hijo de un elemento jquery
¿Cómo encontrar un padre con una clase conocida en jQuery? (3)
Pase un selector a la función parents jQuery:
d.parents(''.a'').attr(''id'')
EDITAR Hmm, en realidad la respuesta de Slaks es superior si solo quieres el ancestro más cercano que coincida con tu selector.
Tengo un <div> que tiene muchos otros <div> s dentro de él, cada uno en un nivel de anidación diferente. En lugar de darle a cada niño <div> un identificador, prefiero darle el identificador a la raíz <div> . Aquí hay un ejemplo:
<div class="a" id="a5">
<div class="b">
<div class="c">
<a class="d">
</a>
</div>
</div>
</div>
Si escribo una función en jQuery para responder a la clase d y quiero encontrar el ID para su padre, clase a , ¿cómo lo haría? No puedo simplemente hacer $(''.a'').attr(''id''); porque hay múltiples clases a . Pude encontrar la identificación de los padres de los padres de los padres, pero parece tener un diseño deficiente, lento y poco polimórfico (tendría que escribir un código diferente para encontrar el ID para la clase c ).
Puede usar los parents para obtener todos los padres con el selector dado.
Descripción: Obtenga los ancestros de cada elemento en el conjunto actual de elementos coincidentes, opcionalmente filtrados por un selector.
Pero parent() obtendrá solo el primer elemento primario del elemento.
Descripción: Obtenga el padre de cada elemento en el conjunto actual de elementos coincidentes, opcionalmente filtrado por un selector.
jQuery parent () vs. parents ()
Y hay .parentsUntil() que creo que será el mejor.
Descripción: Obtenga los antepasados de cada elemento en el conjunto actual de elementos coincidentes, hasta, pero sin incluir, el elemento que coincide con el selector.
Suponiendo que this es .d , puede escribir
$(this).closest(''.a'');
El método closest devuelve el elemento primario más interno de su elemento que coincide con el selector.