2009-12-03 31 views
37

Estoy tratando de escribir código para buscar en todos los niños un div que tenga una clase específica. El DIV no tiene una ID. Aquí está el HTML que usaré.jQuery - buscar hijo con una clase específica

<div class="outerBUBGDiv"> 
<div class="innerBUBGDiv"> 
<div class="bgHeaderH2">Technology Group</div> 
<div class="bgBodyDiv"> 
<div align="center"> 
<img height="33" border="0" width="180" src="/heading.jpg"/> 
    /////other stuff here///// 
</div> 
</div> 
</div> 

Alguna idea de cómo puedo obtener el texto dentro del div con la clase bgHeaderH2.

Gracias de antemano.

Comentario añadido, no explica esto muy bien inicialmente)

+0

Disculpe, no expliqué esto correctamente. mi $ (este) es el padre de todos los niños de arriba, un div externo. Necesito encontrar cuál de los niños tiene una clase de bgHeaderH2. Así que tengo que hacer $ (esto) .algo – Caroline

+0

Ver mi respuesta revisada a continuación ... – Ryan

Respuesta

26

Basado en su comentario, moddify esto:

$('.bgHeaderH2').html(); // will return whatever is inside the DIV 

a:

$('.bgHeaderH2', $(this)).html(); // will return whatever is inside the DIV 

Más sobre selectores: http://docs.jquery.com/Selectors

+4

Siempre debe usar un selector de clase para 'div.bgHeaderH2 'o habrá una penalización de rendimiento en http://www.componenthouse.com/article-19 –

+0

@Dave: ¡buen consejo! No pensé en eso mientras escribía esto :) –

+2

Esta respuesta es realmente "encontrar cualquier elemento en la página con una clase específica". La respuesta de Ryan es más apropiada para el problema de encontrar a los hijos de un cierto div con una clase específica. – Ryan

58
$(this).find(".bgHeaderH2").html(); 

o

$(this).find(".bgHeaderH2").text(); 
+0

Gracias por la actualización Ryan, esto funciona igual que la otra sugerencia en enero – Caroline

2

no estoy seguro si entiendo su pregunta correctamente, pero no debe importar si esto div es un hijo de otro div. Simplemente puede obtener texto de todos los divs con la clase bgHeaderH2 usando el siguiente código:

$(".bgHeaderH2").text(); 
Cuestiones relacionadas