2011-01-05 10 views
5

Entschuldigung, aber dies ist eine wirklich grundlegende jQuery-Syntaxfrage, aber ich kann niemanden finden, der sie irgendwo diskutiert (wahrscheinlich, weil ich die richtigen Begriffe nicht kenne).JQuery-Grundlagen - Auswählen von Elementen in einem zwischengespeicherten Element

Ich möchte wählen/Cache ein mit einer Variablen und dann später den Wert der überprüften Eingänge innerhalb erhalten. Jetzt weiß ich, dass ich dies als ohne Caching tun könnte:

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

Aber ich benutze die div # ‚QuestionID‘ Objekt mehrere Male so wollen es

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

Jetzt Frage, dass $ dh zwischenzuspeichern ein jQuery-Objekt ist, kann ich nicht herausfinden, wie die Dinge im Innern wählen (ohne Kinder() mit)

zum Beispiel des folgenden nicht funktionieren:

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

Ich stelle mir dies ein wirklich grundlegend bisschen Syntax ist, aber ich kann es nicht überall und ich habe viele Kombinationen ohne Glück versucht ......

Jede Hilfe sehr geschätzt werden würde, und wenn diese Entschuldigungen wirklich dumm ist, aber ich bin sehr neu auf jQuery,

Nick

Antwort

1

Sie

var checkedRadios = $('input:radio:checked', $question); 
verwenden können

OR

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

Dieser Baum Verfahrgeschwindigkeit genannt wird, können Sie mehr über Baum Verfahrgeschwindigkeit api in jQuery Documentation

Die find Methode finden wird verwendet, um Elemente unter einem bestimmten Umfang zu suchen.

+0

Danke. Genau das suche ich. Ich habe mir das DOM angesehen, aber ich muss das $ .find() verpasst haben. –

+0

Für die erste Methode dachte ich, dass dieser Selektor mehrere Elemente auswählt (dh er wählt irgendein 'input: radio: checked' und '$ question') anstatt sie hierarchisch auszuwählen (zB $ ('a', $ b) Wählen Sie ein unter $ b.) –

0

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

0

Ich denke, Ihr auf der Suche nach

var checkedRadiosInsideQuestion = $question.find('input:radio:checked'); 
Verwandte Themen