2013-08-31 2 views
6

Lets sagen, ich habe diesen HTML:JQuery Suche in Array von Objekt

<ul> 
<li class="cls">one</li> 
<li class="cls active">tow</li> 
<li class="cls">here</li> 
<li class="cls">after</li> 
</ul> 

ich alle .cls dieses jQuery-Selektor Auswahl: $('.cls') und sie in einer Variablen:

var c=$('.cls'); 

c ist jetzt ein Array von Objekten. Ich möchte .active Element in diesem Array von jQuery-Methoden auswählen. Ich weiß, ich kann $('.cls.active') verwenden, aber das ist nicht, wonach ich suche. Ich möchte c verwenden. Gibt es eine Lösung?

hinweis: c.find('.active') funktioniert nicht, weil .find() suchen in childs.

Antwort

3

Verwendung filter() anstelle von find()

Suche:

Holen die Nachkommen eines jeden Elements in der aktuellen Gruppe angepaßter Elemente, durch einen Selektor gefiltert, jQuery Objekt oder Element.

Filter:

Reduzieren der Gruppe angepaßter Elemente, die denen entsprechen, die den Wähler oder bestehen den Test der Funktion.

c.filter('.active') 
+0

funktioniert gut, danke dir – Omid

0

Verwenden .filter()

c.filter ('aktiv.');

+1

viele andere haben vor langer Zeit geantwortet .... –