document.write in bestehender html-Datei
mdkiller
- javascript
Hallo Forum!
Kann ich innerhalb einer bestehenden HTML-Datei per document.write zusätzlichen Inhalt reinschreiben, heisst, der in dem Dokument stehende Code soll stehen bleiben. Hintergrund ist, dass ich abhängig von der Zeit unterschiedliche Charts einblenden will (DAX bzw. Late-DAX).
Mir stehen keine serverseitigen Sprachen zur Verfügung und unsere Seite funktioniert ohne JS sowieso nicht (liegt am CMS und die Verantwortlichen wollen kein anderes *kotz*).
Gruß
mdkiller
hi,
Kann ich innerhalb einer bestehenden HTML-Datei per document.write zusätzlichen Inhalt reinschreiben, heisst, der in dem Dokument stehende Code soll stehen bleiben.
nein.
document.write _ersetzt_ den bisherigen dokument-inhalt - sofern es nicht schon beim aufbauen der seite ausgeführt wurde.
gruss,
wahsaga
Hallo!
Besteht sonst eine Möglichkeit, dynamisch Inhalt _einzufügen_? Wie gesagt, ohne irgendwas serverseitiges.
Gruß
mdkiller
Ja es geht.
Lege ein <span> mit einer Id an den Ort auf der HTML-Seite, wo du den zusäztlichen HTML-Text einfügen möchtest.
Dann musst du den einzufügenden HTML-Text in eine Variable schreiben (per Javascript), und das alles dann in den <span> schreiben mit folgendem code :
document.all.cattree.innerHTML = htmltext;
cattree ist bei mir die ID für den span. bei dir wird das vielleicht anders heissen. Hier noch mein Beispiel:
Auf HTML Seite :
<span id="cattree">
</span>
Javascript :
htmltext= "<head><link rel=stylesheet href="$Style.css" type="text/css"></head>";
htmltext = htmltext +"<tr><td height=10px></td></tr></table></fieldset>";
document.all.cattree.innerHTML = htmltext;
hoffe konnte dir weiterhelfen,
mfg Janett
Hallo Janett!
Danke für den Hinweis. Aber IMHo funktioniert innerHTML doch nur mit dem IE, oder nicht? Ich werde es aber glaub ich anders machen. Den Chart krieg ich als Bild geliefert, also kann ich ja einfach per JS die src ändern.
htmltext= "<head><link rel=stylesheet href="$Style.css" type="text/css"></head>";
htmltext = htmltext +"<tr><td height=10px></td></tr></table></fieldset>";
document.all.cattree.innerHTML = htmltext;
Ich würde die Erweiterung der Variable htmltext nicht so wie du lösen. Also nicht htmltext = htmltext +[...]; sondern
htmltext .= [...];
Ausserdem verstehe ich auch den Sinn deiner Funktion nicht so ganz...
Trotzdem Danke für den Hinweis.
Gruß
mdkiller
hi,
Ich würde die Erweiterung der Variable htmltext nicht so wie du lösen. Also nicht htmltext = htmltext +[...]; sondern
htmltext .= [...];
der stringverkettungs-operator in JS ist aber "+", nicht ".".
gruss,
wahsaga
Hi!
der stringverkettungs-operator in JS ist aber "+", nicht ".".
Stimmt, .= ist es in PHP! Sch***e!
Gruß
mdkiller
Ja da könntest du recht haben damit, dass InnerHTML nur im IE funzt.
Ich würde die Erweiterung der Variable htmltext nicht so wie du lösen. Also nicht htmltext = htmltext +[...]; sondern
htmltext .= [...];
Ich habe den HTMLText schönheitshalber so zusammengefügt.Also nicht nur deswegen, sondern auch damit es für mich übersichtlicher ist (habe nur aus meinem Projekt copy+paste gemacht :-).
Ausserdem verstehe ich auch den Sinn deiner Funktion nicht so ganz...
Es ist nur ein Beispiel, d.h. nicht der ganze HTMLText. Bei mir wird so eben ein recht grosser Teil der Page aufgebaut.
Werde mich bemühen, beim nächsten Post einen genauer auf das Problem umgeschriebenen Code einzufügen
Schönen Tag
Janett
Hallo,
»»Hintergrund ist, dass ich abhängig von der Zeit unterschiedliche Charts einblenden will (DAX bzw. Late-DAX).
Dann reicht es doch, wenn Du - per JS, wie von Dir gewünscht - beim Aufruf der Seite die aktuelle Zeit (des Clients!) abfragst, und abhängig davon das eine oder andere img aufrufst.
Gruß Fritz
Hi!
Danke für den Hinweis, ich denke, ich werde es auch so machen...
Gruß
mdkiller