Elli: document.write einmal so und dann wieder so

Hi,

  
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
<head>  
<title>write in func und ohne</title>  
</head>  
<body>  
  
<p onclick="document.write('Rest der seite ist weg');"></p>  
<p><input type="button" value="test funktion" onclick="document.write('Durch Funktion aktiviert');" /></p>  
<p><script type="text/javascript">document.write('so soll es sein');</script></p>  
  
<p>Wieso schreibt document.write bei onclick nicht auch an der gleichen Stelle des Aufrufs inklusive des restlichen Inhalts, wie ohne onclick?</p>  
  
</body>  
</html>  

auch wenn das natürlich locker anders zu lösen ist, mir gehts es nur aus Wissbegierde um diesen Effekt. Warum schreibt document.write bei normaler einbindung genau an der Stelle das was ich will ohne den übrigen Code zu entfernen, während bei einem Eventhandler oder einer Funktion der komplette Code weg ist und lediglich nur noch der geforderte Text da ist?

Natürlich ist mir auch klar dass der Eventhandler innerhalb eines Elemetes aufgerufen werden soll, was ja dann nur noch im Quelltext zu sehen wäre aber das kann ja nicht die Begründung sein.

Elli

  1. Hallo,

    Warum schreibt document.write bei normaler einbindung genau an der Stelle das was ich will ohne den übrigen Code zu entfernen, während bei einem Eventhandler oder einer Funktion der komplette Code weg ist und lediglich nur noch der geforderte Text da ist?

    works as designed.
    Wird document.write() aufgerufen, *während* das Dokument gerendert wird, dann schreibt es seine Ausgabe in das entstehende Dokument. Wird es *nach* dem Rendern aufgerufen, erzeugt es ein neues Dokument, das das bisherige ersetzt.

    So long,
     Martin

    --
    Keine Sorge, wir finden für jede Lösung ein Problem.