hammerfranz: schließendes script-tag im String

Beitrag lesen

Hallo Freunde,

kann mir das bitte mal einer erklären?

  
<html>  
	<head>  
		<script type="text/javascript">  
			alert("wont be alerted");  
			alert("</script>");  
			alert("will be written to document");  
		</script>  
	</head>  
	<body>	  
	</body>  
</html>  

ausgegeben wird:

"); alert("will be written to document");

Ich kann nicht verstehen, warum das schließende script-tag, obwohl es im String steht, alles kaputt macht. Nicht mal das erste alert wird ausgeführt.

Hat jemand dafür eine Erklärung?

Und weiter: Gibt es workarounds oder Maßnahmen, um user-inputs entsprechend zu filter, damit sie, falls sie nach Eingabe irgendwo in die Seite geschrieben werden nicht alles kaputt machen wenn ein "</script>" eingegeben wird !?

Danke und viele Grüße
Franz