2014-03-04 22 views
5
gleiche Klassenname hat

ich alle Eltern auswählen müssen, dieWählen alle Eltern, die

jetzt mit jQuery gleichen Klasse hat i wählen kann nur ein Element, aber ich möchte wählen alle übergeordneten Elemente

<div class="text"> 
<div class="text"> 
    <div class="text"> 
    <div class="text"> 
    <div class="text"> 
    <div class="text-3"> 
     hi 
    </div> 
    </div> 
    </div> 
    </div> 
</div> 
</div> 

in dieser ich brauche die übergeordneten Elemente von .text-3 auszuwählen, die text als Klassenname hat

+0

Bitte zeigen Sie Ihren Code. – Amit

+0

Sie können versuchen, '$ ('. Text-3'). Eltern ('. Text')' – Satpal

+0

Wählen Sie alle Eltern mit der Klasse 'text'? Sehr selten, so viele Klassen mit demselben Namen zu nisten. – Raptor

Antwort

3

Verwendung .parents():

Beschreibung: die Vorfahren jedes Elements in dem aktuellen Satz von abgestimmten Elementen Erhalten, durch einen Selektor gefiltert optional.

$('.text-3').parents('.text') 

über jedes Element, Verwendung iterieren:

$('.text-3').parents('.text').each(function(){ 
    //code here 
}); 

Working Fiddle

4

Sie parents() verwenden können:

Die Vorfahren jedes Elements im aktuellen Satz übereinstimmender Elemente abrufen, optional durch einen Selektor gefiltert.

var parents = $('.text-3').parents('.text') 

oder has():

Reduzieren der Gruppe angepaßter Elemente, die denen, die ein Nachkomme haben, die den Wähler oder DOM-Element entspricht.

var parents = $('.text').has('.text-3') 
1

.parents() Versuchen verwendet:

$('.text-3').parents('.text') 

Beispiel aus dem li nked site:

Finden Sie alle Elternelemente von jedem b.

<!doctype html> 
<html lang="en"> 
<head> 
    <meta charset="utf-8"> 
    <title>parents demo</title> 
    <style> 
    b, span, p, html body { 
    padding: .5em; 
    border: 1px solid; 
    } 
    b { 
    color: blue; 
    } 
    strong { 
    color: red; 
    } 
    </style> 
    <script src="//code.jquery.com/jquery-1.10.2.js"></script> 
</head> 
<body> 

<div> 
    <p> 
    <span> 
     <b>My parents are: </b> 
    </span> 
    </p> 
</div> 

<script> 
var parentEls = $("b").parents() 
    .map(function() { 
    return this.tagName; 
    }) 
    .get() 
    .join(", "); 
$("b").append("<strong>" + parentEls + "</strong>"); 
</script> 

</body> 
</html> 

Meine Eltern sind: SPAN, P, DIV, BODY, HTML

Verwandte Themen