2012-04-13 19 views
-1

Ich möchte den Inhalt eines div bekommen, das in einem anderen div ist und sie in eine Liste setzen, um es danach an die Datenbank zu senden. Ich Schleife um das Div und bekomme alle seine Inhalte, aber alles, was es nur den Inhalt des ersten Elements der Schleife zurückgibt.Wie bekomme ich den Inhalt eines Kindes div javascript

Das Div sieht wie folgt aus:

 $('#Classes').append('<div> <h1 class = "flip" wpID="' + subjects[i].Wkp_ID+ '</h1><div id ="NewBody" class="panel" contenteditable>' + subjects[i].Wkp_Body + '</div> </div>'); 

ich diese Zeilen, um den Inhalt zu bekommen:

 $('#Classes div').each(function (index) { 
     var header = $(this).children('h1'); 
     var wpID = header.attr('wpID'); 
     var WeekBody = document.getElementById("NewBody"); 
     var Weekbodycontent = WeekBody.innerHTML; 

    WeekPlan[index] = {"Wkp_Body": WeekBody}; 
    }); 

Also, wissen Sie, wie kann ich alle Elemente in die Liste ein hinzufügen, indem Sie ein ?

Danke

Antwort

1

Sie haben mehrere Probleme. Zunächst einmal kann nicht dieselbe ID in mehr als einem Objekt in Ihrem Dokument vorhanden sein. Sie müssen das ändern.

Dann würde ich diese Art von Lösung vorschlagen, eine Klasse auf der gewünschten .panel div mit:

$('#Classes').append('<div class="container"><div class="panel" contenteditable>' + 
    subjects[i].Wkp_Body + '</div> </div>'); 

$('#Classes .container').each(function (index) { 
    var header = $(this).children('h1'); 
    var body = $(this).find(".panel"); 
    var Weekbodycontent = body.html(); 
    WeekPlan[index] = {"Wkp_Body": body.get(0)}; 
}); 
+0

Ok das wäre großartig, aber es ist ein Problem, vor dem zweiten div habe ich einen Header, hat einige Attribute, die ich auch bei meinem Code verwende ... So sieht es aus: – OnlyHope

+0

$ ('# Classes'). append ('

' + subjects[i].sbj_Name + " Class:" + subjects[i].Ttb_Class + '

' + subjects[i].Wkp_Body + '
'); – OnlyHope

+0

Wenn Sie präzise Hilfe benötigen, zeigen Sie uns Ihr aktuelles HTML. Ich kann nur an dem von Ihnen angegebenen HTML-Code teilnehmen. Und, bitte fügen Sie keinen mehrzeiligen Code in Kommentare ein (da er nicht lesbar ist). Wenn Sie mehrzeiligen Code hinzufügen müssen, fügen Sie ihn über den Link "Bearbeiten" zu Ihrer Frage hinzu und fügen Sie dann einen Kommentar hinzu, der die Personen auf den neuen Teil Ihrer Frage verweist. – jfriend00

Verwandte Themen