jQuery .parent () wählt mehrere Ebenen aus

8

Ich habe eine Hierarchie wie folgt:

%Vor%

Was ich versuche, ist die Auswahl des übergeordneten <search> des <input/> onFocus, aber wenn ich das tue:

%Vor%

Die Konsole zeigt ein leeres Array an. Gibt es eine saubere Möglichkeit, einen Elternteil mehr als eine Ebene höher auszuwählen? Der einzige Weg, den ich kenne, wäre .parent().parent("search") , was funktionieren würde, aber nicht sehr sauber ist, und wenn ich versuchen würde, einen Elternteil mit 5 Tiers auszuwählen, wäre das nur grauenvoll.

    
David 09.04.2014, 22:05
quelle

2 Antworten

20

Probieren Sie .closest() :

aus
  

Erhalten Sie für jedes Element in der Menge das erste Element, das mit der übereinstimmt   Selektor, indem Sie das Element selbst testen und durch sein   Vorfahren in der DOM-Struktur.

%Vor%     
Oriol 09.04.2014, 22:08
quelle
3

Von den Dokumenten :

  

Die Methoden .parents () und .parent () sind ähnlich, mit der Ausnahme, dass letzteres nur eine Ebene in der DOM-Struktur zurücklegt.

Verwenden Sie stattdessen $.parents .

    
Madbreaks 09.04.2014 22:08
quelle

Tags und Links