Style

Assistant

Startseite
Screenshot
Kurzanleitung
Download
Kurse & Infos
>Tipps & Tricks<
Unterstützer
TMXtensions
?Freeware!
About TM
E-Mail
Made with CSS
Valid HTML 4.01!
Stand: 07.12.2002

Tipps & Tricks – Tipp 29
Zur Übersicht

29. Scripts in XSL-Dateien verwenden (13.06.2000)

Die Ermittlung der Anzahl von Kindelementen in einer XML-Struktur sollte sich eigentlich leicht mit XSL(T)-Methoden bewerkstelligen lassen, aber mit Anweisungen wie <xsl:value-of select="count(item)" /> bewegt sich im MSIE 5.x nichts ... Nach Stunden ergebnisloser Tüftelei enstand die Idee, diese Funktionalität via XML-DOM und einem JavaScript nachzurüsten. Doch wie bindet man ein Script (oder ein CSS) in eine XSL-Datei ein? Dazu dienen sogenannte CDATA-Abschnitte.

	<xsl:script language="JavaScript" type="text/javascript">
	<![CDATA[

	function Anzahl(suchstr)
	{
	return selectNodes(suchstr).length;
	}

	]]>
	</xsl:script>
	
<xsl:script> und <xsl:eval> sind von Microsoft eingeführte (proprietäre) XSL-Anweisungen, die aber im IE-Umfeld durchaus nützlich sind. Das verwendete Beispiel ist mit dem im Tipp 28 verwendeten bis auf die modifizierte XSL-Datei identisch. Die Ausgabe wird mit der folgenden Anweisung realisiert.

	Diese Tabelle beinhaltet: <B>
	<xsl:eval>Anzahl("/buecher/eintrag")</xsl:eval>
	</B> Titel.

      
Sollen dagegen JavaScript-Funktionen in die generierten HTML-Dokumente integriert werden, empfiehlt sich diese Methode:

	<script language="JavaScript" type="text/javascript">
	<xsl:comment>
	<![CDATA[

	function xyz()
	{
	  /* Script-Code */
	}

	]]>
	</xsl:comment>
	</script>