SNOWMAN Geschrieben 16. November 2005 Geschrieben 16. November 2005 Hi, ich hab n <div> element das Details anzeigen soll. <div class="details" id="details"> <b>Details</b> </div> und eine JS Funktion die dann Werte in das <div> schreiben soll function update(Parameter1, ..., Parameter n) { document.getElementById("details").Schreibe(Parameter1, Parameter2,...); } Also das "Schreibe(...)" ist mein Problem, was kann ich da verwenden? write() bzw. writeln() gehn nich. Kann ich es bei einem <div> überhaupt? Wenn nein, was wäre eine Alternative? THX
SNOWMAN Geschrieben 16. November 2005 Autor Geschrieben 16. November 2005 auch wenn mir nun etwas komisch ist... ich habs geschafft mich mit komischen textnodes auseinanderzusetzen... ich hab zwar nich ganz die ahnung was das macht aber es macht es, halb function update(LongName, Lesson, LessonStart, LessonEnd, Room) { document.getElementById("details").removeChild(document.getElementById("details").firstChild); var detailbox = document.getElementById("details"); var myText = document.createTextNode("<b>Details:</b><br>LongName<br>Von: LessonStart<br>Bis:LessonEnd<br>Zimmer: Room"); detailbox.appendChild(myText); } Bewirkt das der Text in des <div>-Element geschreiben wird, aber die HTML-Tags werden nicht umgewandelt. Muss man da was spezielles beachten?
Aiun Geschrieben 17. November 2005 Geschrieben 17. November 2005 HTML besteht, wie XML aus einer hierarchie von Knoten / Tags / Elementen also ist <html>, <body>, <div> etz. jeweils ein Element. Jedes Element kann [n] Attribute haben. Jedes Element kann Kindelemente haben. die unterteste Ebene sind Textnodes (ich glaube das entspricht cdata in XML) schreibst du also <a href="test.html">Hallo</a> in ein Div-Layer, geht das etwa so: div = document.getElementById('divid'); a = document.createElement('a'); a.href = 'test.html'; t = document.createTextNode("Hallo"); a.appendChild(t); div.appendChild(t); document.write und .innerHTML ist 'hässlich' und soweit ich weis seit xhtml nicht mehr erlaubt. Wenn du jetzt den A-Tag wieder loswerden willst, gibst du ihm beim erstellen mit a.id = '1' eine ID sagst a = document.getElementById('1'); div.removeChild(a); angemerkt sei, bei einem Refresh der Seite, verschwinden alle diese Elemente. Warum: weil sie nicht teil des HTML-Dokuments sind, das beim refresh neu geladen wird. Was dagegen tun: keine Ahnung
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden