DataFox
Erfahrenes Mitglied
Hi Leute!
Ich habe hier ein sehr seltsames Problem. In einem externen JavaScript befindet sich eine String-Variable, welche einen HTML-Code enthält. Im HTML-Code dieser Variable befinden sich Links, DIV-Container mit id's, aber auch JavaScript-Tags mit JavaScript Code.
Der HTML-Code wird einem DIV-Container zugewiesen. Dieser war bereits zuvor mit ähnlichem Code gefüllt, nur dieses mal sind diverse Texte anders:
Wie erwartet ist der HTML-Code nun auf der Website sichtbar und es scheint alles zu funktionieren!
Aber: Versucht mal, das Element mit der id="menu" anzusprechen. Aus irgend einem Grund sind die Elemente zwar da, aber von JavaScript nicht ansprechbar! Auch die JavaScript-Codes in script-tags werden nicht ausgeführt!
Ich kann mich noch gut dran erinnern das ich solche Probleme auch schon mit Ajax hatte, wenn man einfach einen DIV-Container mit HTML-Code befüllt: Die HTML-Elemente sind zwar da, aber sind praktisch "tot", man kann sie nicht ansprechen. Für JavaScript sind sie unsichtbar.
Nun die Frage an die Experten: Welche Möglichkeiten habe ich, um Teile einer Website clientseitig durch anderen HTML-Code zu ersetzen, ohne auf die höchst umständliche Generierung mit createElement-Funktionen zurück zu greifen (denn der neue HTML-Code liegt mir in genau der Form vor, wie er im Quelltext stehen soll)?
Ich habe hier nicht die Möglichkeit Serverseitig den HTML-Code einzufügen...
Gruß
Laura
Ich habe hier ein sehr seltsames Problem. In einem externen JavaScript befindet sich eine String-Variable, welche einen HTML-Code enthält. Im HTML-Code dieser Variable befinden sich Links, DIV-Container mit id's, aber auch JavaScript-Tags mit JavaScript Code.
Der HTML-Code wird einem DIV-Container zugewiesen. Dieser war bereits zuvor mit ähnlichem Code gefüllt, nur dieses mal sind diverse Texte anders:
Code:
var htmlCode = "<div id=\"menu\">Funktioniert nicht...</div>...";
document.getElementById('div_container').innerHTML = htmlCode;
Wie erwartet ist der HTML-Code nun auf der Website sichtbar und es scheint alles zu funktionieren!
Aber: Versucht mal, das Element mit der id="menu" anzusprechen. Aus irgend einem Grund sind die Elemente zwar da, aber von JavaScript nicht ansprechbar! Auch die JavaScript-Codes in script-tags werden nicht ausgeführt!
Ich kann mich noch gut dran erinnern das ich solche Probleme auch schon mit Ajax hatte, wenn man einfach einen DIV-Container mit HTML-Code befüllt: Die HTML-Elemente sind zwar da, aber sind praktisch "tot", man kann sie nicht ansprechen. Für JavaScript sind sie unsichtbar.
Nun die Frage an die Experten: Welche Möglichkeiten habe ich, um Teile einer Website clientseitig durch anderen HTML-Code zu ersetzen, ohne auf die höchst umständliche Generierung mit createElement-Funktionen zurück zu greifen (denn der neue HTML-Code liegt mir in genau der Form vor, wie er im Quelltext stehen soll)?
Ich habe hier nicht die Möglichkeit Serverseitig den HTML-Code einzufügen...
Gruß
Laura