2012-03-31 20 views
0

Das ist mein Problem: Ich muss ALLE Elemente auswählen und entfernen, die einem bestimmten Element folgen.Wie lösche ich alle Elemente nach einem ausgewählten Element?

Hier ist ein Beispiel dafür, wie meine Webseite strukturiert:

<h2> 
<span class="myClass" id="Note">Note</span> 
</h2> 
<ol class="secondClass">...</ol> 
<h2>...</h2> 
<ul>...</ul> 
<h2>...</h2> 
<ul>...</ul> 
<table class="tableOne">...</table> 
<div class="otherClass"> 

Insbesondere muss ich alle Elemente löschen, nachdem <span class="myClass" id="Note">Note</span>

ich viel Thema über die NextAll() JQuery Selector lesen, aber aber ich kann mein Problem nicht lösen.

+0

Es sind keine Elemente nach dieser Spanne in diesem DOM-Knoten ('h2'). Das könnte nur dein Problem sein. Da Sie jedoch Ihren Code nicht bereitstellen konnten, ist es schwer zu sagen. – PeeHaa

Antwort

2

.nextAll() zielt auf Geschwister, und Ihre Spanne hat keine. Vielleicht sollten Sie auf seine Eltern abzielen. ZB

$(".myClass").parent().nextAll().remove() 
+0

Perfekt. Es klappt! Vielen Dank. – user1305336

0

Das Problem ist, dass nextAll nur Geschwisterelemente bekommt. Für eine allgemeine Lösung für dieses Problem, wenn Sie verwenden nextAll müssten Sie es auf das Element rufen und alle übergeordneten Elemente:

$(".myClass").parents().andSelf().nextAll().remove(); 
Verwandte Themen