2009-05-13 12 views
1

Ich lerne JQuery und habe die Factory-Funktion $() mit ihren Selektoren sehr nützlich gefunden. Ich kann jedoch nicht herausfinden, wie ich innerhalb eines bestimmten Elements, das ich als Variable benannt habe, auswählen kann. Zum Beispiel:

var thisDiv = $("#myDiv"); 

// thisDiv looks like this: 
<div id="myDiv"> 
<input id="apples" /> 
<input id="bananas" /> 
</div> 

Wie würde ich die Eingabe mit id = "Äpfel" gegeben wählen nur die Variable thisDiv in JQuery? Vielen Dank!

Antwort

3
$("#thisDiv #apples") 

Sie können aber auch tun:

thisDiv.find("#apples"); // use find method 

und auch:

$("#apples", thisDiv); // provide context 
+0

Danke für beide Lösungen! – ash

1

könnten Sie versuchen, diese

thisDiv.find('#apples'); 
1

Sie sollten es auswählen können durch die Suche in Ihrem div wie:

$("#myDiv").find("#apples") 
1
$('#apples', thisDiv); 
1

Vielleicht waren Sie nur ein Beispiel und nicht repräsentativ für den richtigen Code, aber es ist erwähnenswert, dass eine ID pro Dokument eindeutig zuzuordnen ist, deshalb müssen Sie nicht besonders den Kontext benötigen.

$('#apples'); 
$('#apples', thisDiv); // same result, more lookups 

Wenn es nur ein Beispiel war, und Sie wollten wissen, wie jedes Element zu finden, jeden Selektor, dann ja, die anderen Antworten hier sind alle richtig.

thisDiv.find('li.myClass'); // or, 
$('li.myClass', thisDiv); 
+0

Manche Leute möchten mit Selektoren spezifisch sein, um das Auffinden von Elementen zu beschleunigen, jQuery verwendet jedoch (iiRC) getElementById(), was am schnellsten ist. – alex