Der Martin: Funktion in document.write aufrufen

Beitrag lesen

Hallo,

function build()
{
document.write('<script type="text/javascript">alertfenster()</script>')
}

[...]

<body onload="build()">

was du hier machst, ist natürlich heimtückisch. Das *kann* nicht funktionieren.

Das onload-Event tritt ein, wenn der Browser mit dem Rendern des Dokuments fertig ist. Wenn du zu diesem Zeitpunkt document.write() verwendest, wird das geladene Dokument durch den neu ausgegebenen Quelltext *ersetzt*. Nach der Ausführung des Scripts besteht also dein gesamtes Dokument aus der einen Zeile

<script type="text/javascript">alertfenster()</script>

die für sich allein keinen Sinn mehr ergibt.

Wenn du Teile des Dokuments dynamisch durch Javascript erzeugen willst, musst du das tun, während das Dokument gerendert wird, also z.B. indem du das document.write() mitten im body notierst - und zwar an der Stelle, wo der dynamische Inhalt eingesetzt werden soll.

BTW, worin steckt überhaupt der Sinn, mit Javascript einen Script-Block zu erzeugen? Das kommt mir unsinnig vor, und ich bin nicht einmal sicher, ob das überhaupt geht.

So long,

Martin

--
Wenn der Computer wirklich alles kann,
dann kann er mich mal kreuzweise.