2009-09-11 7 views
6
<div id="container1"> 
<span>...</span> 
</div> 
<div id="container2"> 
<span>...</span> 
</div> 

Powiedz, jeśli mam obiekt jQuery $ ("container1"), jak znaleźć w nim <span>?Jak wybrać w kontenerze z jQuery?

+1

'$ ('container1')' nie wybierze elementu z tym id, ale raczej elementy tego typu, więc nic, ponieważ nie ma elementów container1. zapomniałem #: '$ ('# container1')' – basic6

Odpowiedz

17

Wystarczy wybrać descendant rozpiętość:

$('#container1 span'); 

pamiętać, że będzie wybrać dowolny przedział wewnątrz # container1, nawet jeśli nie jest bezpośrednim potomkiem.

Jeśli chcesz wybrać tylko bezpośrednich potomków, użyj wybieraka parent > child:

$('#container1 > span'); 

Jeśli masz tylko odniesienie do obiektu możesz:

$container1.find('span'); 

Albo

$container1.children('span'); 
+0

Mam na myśli, że powinien mieć format "$ ('container1') ..." – omg

4

Istnieje wiele sposobów, aby to zrobić. Według komentarza na CMS odpowiedzi:

$('#container1').find('span:first'); 

i

$('#container1 span:first'); 

na wierzchu innych sugestii w CMS.

22

wiem, że zaakceptowali odpowiedź, Chciałbym tylko dodać inny sposób to zrobić:

$("span", $container1); //This will start in your variable $container1 
          and then look for all spans 

nie testowałem wydajność na nich jeszcze, więc nie wiem, co jest lepszy. Pomyślałem, że dam ci znać, że masz więcej opcji (:

Powiązane problemy