webentwicklung-frage-antwort-db.com.de

Wie lösche ich den gesamten Inhalt von <div> in einem übergeordneten <div>?

Ich habe ein div <div id="masterdiv"> die mehrere Kinder hat <div>s.

Beispiel:

<div id="masterdiv">
  <div id="childdiv1" />
  <div id="childdiv2" />
  <div id="childdiv3" />
</div>

So löschen Sie den Inhalt aller untergeordneten <div>s im Master <div> mit jQuery?

210
Prasad
jQuery('#masterdiv div').html('');
258
Quentin

die Funktion empty() von jQuery macht genau das:

$('#masterdiv').empty();

löscht den Master div.

$('#masterdiv div').empty();

löscht alle untergeordneten divs, lässt den Master jedoch intakt.

437
Emil Ivanov

Verwenden Sie die CSS-Selektorsyntax von jQuery, um alle div -Elemente innerhalb des Elements mit der ID masterdiv auszuwählen. Rufen Sie dann empty() auf, um den Inhalt zu löschen.

$('#masterdiv div').empty();

Wenn Sie text('') oder html('') verwenden, wird ein String-Parsing durchgeführt. Dies ist im Allgemeinen eine schlechte Idee, wenn Sie mit dem DOM arbeiten. Versuchen Sie, DOM-Manipulationsmethoden zu verwenden, bei denen nach Möglichkeit keine Zeichenfolgendarstellungen von DOM-Objekten verwendet werden.

19
Drew Noakes

Wenn alle Divs in diesem Masterdiv gelöscht werden müssen, ist dies der Fall.

$('#masterdiv div').html('');

andernfalls müssen Sie alle div-Kinder von #masterdiv durchlaufen und prüfen, ob die ID mit childdiv beginnt.

$('#masterdiv div').each(
    function(element){
        if(element.attr('id').substr(0, 8) == "childdiv")
        {
            element.html('');
        }
    }
 );
11
Ikke

Der bessere Weg ist:

 $( ".masterdiv" ).empty();
11
Joe Mike

jQuery empfiehlt, ".empty ()", ". remove ()", ". detach ()" zu verwenden.

wenn Sie alle Elemente im Element löschen müssen, verwenden Sie diesen Code:

$('#target_id').empty();

wenn Sie alle Elemente löschen mussten, verwenden Sie diesen Code:

$('#target_id').remove();

i und jQuery-Gruppe nicht zur Verwendung empfehlen SET FUNCTION wie .html () .attr () .text (), was ist das? Es ist , wenn Sie etwas einstellen möchten, das Sie brauchen

ref: https://learn.jquery.com/using-jquery-core/manipulating-elements/

10
$("#masterdiv div").text("");
6
brendan
$("#masterdiv > *").text("")

oder

$("#masterdiv").children().text("")
6
adamse

Sie können die Funktion .empty () verwenden, um alle untergeordneten Elemente zu löschen

 $(document).ready(function () {
  $("#button").click(function () {
   //only the content inside of the element will be deleted
   $("#masterdiv").empty();
  });
 });

Um den Vergleich zwischen jquery .empty (), .hide (), .remove () und .detach () zu sehen, folgen Sie hier http://www.voidtricks.com/jquery-empty-hide-remove-detach /

6
Anand Roshan
$('#div_id').empty();

oder

$('.div_class').empty();

Funktioniert einwandfrei, um Inhalte in einem div zu entfernen

5
Raki

Wenn Sie Daten mit einem Dienst oder einer Datenbank an div by id anhängen, versuchen Sie es zunächst leer, wie folgt:

var json = jsonParse(data.d);
$('#divname').empty();
5
Sheeraz
$("#masterdiv div[id^='childdiv']").each(function(el){$(el).empty();});

oder

$("#masterdiv").find("div[id^='childdiv']").each(function(el){$(el).empty();});
4
andres descalzo

versuchen Sie es, wenn es hilft.

$('.div_parent .div_child').empty();

$('#div_parent #div_child').empty();

0
Gaurav Kaushik