2011-01-05 12 views
5

Niestety, jest to naprawdę podstawowe pytanie dotyczące składni jQuery, ale nie mogę znaleźć nikogo, kto by o tym rozmawiał w dowolnym miejscu (prawdopodobnie dlatego, że nie znam poprawnych terminów do wyszukania).Podstawy JQuery - Zaznaczanie elementów wewnątrz elementu z pamięci podręcznej

Chcę wybrać/cache za pomocą zmiennej, a następnie uzyskać wartość sprawdzonych danych wejściowych w tym. Teraz wiem, że mogę to zrobić bez buforowania jak:

var questionID = (a string) 
$(questionID + " input:radio:checked").val() 

Ale używam obiektu div # „questionID” wiele razy, więc chcą buforować to znaczy

questionID = '#' + ...Something that changes ... 
$question = $(questionID); 

Teraz $ pytanie jest obiektem jQuery nie mogę dowiedzieć się, jak wybrać rzeczy wewnątrz niego (bez użycia dzieci())

na przykład następujące nie działają:

$question.(' input:radio:checked) 
$($question 'input:radio:checked') 

sobie wyobrazić, że jest to naprawdę podstawowe nieco składni, ale nie mogę go nigdzie znaleźć i próbowałem wiele kombinacji bez powodzenia ......

Każda pomoc będzie bardzo mile widziane i Przepraszam, czy to jest naprawdę głupie, ale jestem bardzo nowe do jQuery,

Nick

Odpowiedz

1

Można użyć

var checkedRadios = $('input:radio:checked', $question); 

LUB

var checkedRadios = $question.find('input:radio:checked'); 

To się nazywa drzewo postępowy można znaleźć więcej o drzewa postępowego api w jQuery Documentation

Metoda find służy do wyszukiwania elementów w ramach danego zakresu.

+0

Dzięki. Właśnie tego szukam. Spojrzałem na poruszanie się po DOM, ale musiałem przegapić $ .find(). –

+0

Dla pierwszej metody, myślałem, że ten selektor wybiera wiele elementów (tzn. Wybiera dowolne "input: radio: checked" i "$ question") zamiast wybierać je w sposób hierarchiczny (tj. $ ("A", $ b) wybierając poniżej $ b.) –

0

Spróbuj $('input:radio:checked', $question) ...

0

myślę szukasz

var checkedRadiosInsideQuestion = $question.find('input:radio:checked'); 
Powiązane problemy