Gibt es eine Möglichkeit, ein div zu leeren, so dass nur Elemente mit einem bestimmten Klassennamen übrig bleiben? Oder gibt es eine Möglichkeit, alle Elemente innerhalb eines div zu entfernen, so dass nur Elemente mit einer bestimmten Klasse übrig bleiben?Jquery empty() div außer passenden Elementen
Antwort
Diese den Trick tun sollten versuchen Sie dies
$('#theDiv').find('*:not(".className")').remove();
@Jason - Ich bin ganz auf Marves Antwort - aber was ist, wenn beide funktionieren? Er sollte die Antwort akzeptieren, die für ihn am nützlichsten ist. – karim79
@ Weg Marve ist wahrscheinlich besser, aber hier ist sowieso eine andere (mit filter):
$('#theDiv').find('*').not('.className').remove();
Beispiel Markup:
<div id="theDiv">
<p>this will be removed</p>
<p class="className">this will stay</p>
</div>
$("#yourDiv").html($('#yourDiv').filter('.IWantThisClass, .IWantThisToo').html());
Hier ist eine weitere Option mit nur jQuery Selektoren:
$("#theDiv *:not('.className')").remove();
Das Problem mit einem Verfahren wie diesem und über denen, wenn es irgendwelche untergeordneten Elemente sind, werden sie zum Beispiel auch entfernt werden:
<div id="theDiv">
<p>this will be removed</p>
<p class="className"><strong>this will also be removed :(</strong></p>
</div>
Das Dies wird auch entfernt :( Text wird auch entfernt, da es die Wildcard * entspricht und nicht die Klasse Klassenname hat. Um dies zu lösen, wir wollen nur direkte Kinder der Eltern filtern, wie zB:
$("#theDiv > *:not('.className')").remove();
Danke. Diese Antwort ist viel besser als die angenommene IMO. – Demnogonis
- 1. e.target.hasClass() arbeitet nicht an allen passenden Elementen
- 2. jQuery Löschen von div Kinder außer einem
- 3. jQuery wickeln Mengen von Elementen in div
- 4. JQuery Differenz .html ("") vs .empty()
- 5. Jquery finden am nächsten passenden Element
- 6. Add Klasse zu allen passenden Eltern Div
- 7. Wie ich div in jquery anhängen und löschen div außer erste div
- 8. Wie alle Kinder div außer einem bestimmten mit jQuery ausblenden?
- 9. Clear DIV mit Jquery außer einem Element mit seinen Kindern
- 10. Wie man ganzen Körper außer einem div
- 11. jQuery Auswählen und Filtern von Elementen in einem div
- 12. Summenwert von Elementen innerhalb eines div mit jquery
- 13. Randomize eine Sequenz von div-Elementen mit jQuery
- 14. jquery sortierbar außer diesem
- 15. jQuery: Ziel alle außer ___?
- 16. Passenden Wert JSON-Array-Werte in jquery
- 17. Hinzufügen von Elementen zu div
- 18. Empty Div Return mit Xpath oder Css Selector mit Scrapy
- 19. jQuery wählen Sie alle außer zuletzt
- 20. jQuery behandelt Ereignisse auf dynamisch hinzugefügten Elementen
- 21. RecyclerView Empty
- 22. wie div mit jquery zu verstecken, wenn irgendwo klicken außer einem div? es zeigt einen div mit Optionen mit folgenden
- 23. Isolierende Div mit jQuery-Funktion
- 24. jQuery "Wählen Sie alle außer"
- 25. Slide div von hinten div über jquery
- 26. Schaffung json von DOM-Elementen mit jQuery
- 27. jQuery Hover-Ereignis mit verschachtelten Elementen
- 28. Schleife durch div mit verschiedenen Elementen
- 29. Positionierung von div Elementen horizontal, nicht vertikal
- 30. Positionieren von drei Elementen in div
wenn Marve Antwort das Problem löst man es annehmen sollte, indem Sie das Häkchen in der Nähe seiner Antwort klicken. – SilentGhost