Programmieren - alles kontrollieren 4.941 Themen, 20.715 Beiträge

Javascript code mit XSLT erzeugen

Yves3 / 7 Antworten / Baumansicht Nickles

Hallo

Ich erhalte eine Fehlermeldung, wenn ich eine Javascript Schleife mit XSLT erzeugen will:

An dieser Stelle sind keine Leerzeichen zugelassen. Fehler beim Bearbeiten der Ressource 'file:///E:/WEB/LOG2HTM2/logfile.x...

for (var i = 0; i
--------------------^

Ich vermute, das liegt daran, dass das kleiner-als-Zeichen von XSLT interpretiert werden will und dann kein Befehl oder so was folgt...
Was muss ich machen, dass das so funktioniert?

Schon mal Danke für jede Hilfe!

bei Antwort benachrichtigen
Yves3 Nachtrag zu: „Javascript code mit XSLT erzeugen“
Optionen

Lol das gibts ja nicht...
Jetzt such ich doch schon ne Weile und kaum schreibe ich hier ins Forum, finde ich die Lösung auch schon selber :D

Das ganze muss in ein CDATA Tag.

[Diese Nachricht wurde nachträglich bearbeitet.]

bei Antwort benachrichtigen
Yves3 Nachtrag zu: „Javascript code mit XSLT erzeugen“
Optionen

So ich hab noch ein Problem, ich schreibe es mal hier rein:
Warum funktioniert dieser Code nicht? Die Tags werden anscheinend erzeugt, die Attribute aber nicht.

[xsl:template match="LogEvent"]
[tr]
[xsl:element name="td"]
[xsl:attribute name="width"]100%[/xsl:attribute]
[xsl:attribute name="id"]id[xsl:value-of select="Id" /][/xsl:attribute]
[xsl:attribute name="class"][xsl:value-of select="Type" /][/xsl:attribute]
[xsl:element name="a"]
[xsl:attribute name="id"]plusminus[xsl:value-of select="id" /][/xsl:attribute]
[xsl:attribute name="class"]plusminus[/xsl:attribute]
[xsl:attribute name="href"]javascript:ExpandEvent('[xsl:value-of select="id" /]')[/xsl:attribute]
+
[/xsl:element]
[xsl:value-of select="Id" /] : [xsl:value-of select="Description" /][br/]
[xsl:element name="div"]
[xsl:attribute name="id"]details[xsl:value-of select="id" /][/xsl:attribute]
[xsl:attribute name="class"]minimized[/xsl:attribute]
Typ: [xsl:value-of select="Type" /][br/]
Zeile: [xsl:value-of select="Line" /][br/]
Datei: [xsl:value-of select="File" /][br/]
[/xsl:element]
[/xsl:element]
[/tr]
[/xsl:template]

bei Antwort benachrichtigen
T-Rex Yves3 „So ich hab noch ein Problem, ich schreibe es mal hier rein: Warum funktioniert...“
Optionen

Ohne Gewähr:


<xsl:template match="LogEvent">
<tr><td width="100%"><xsl:attribute name="id">id<xsl:value-of select="Id" /></xsl:attribute><xsl:attribute name="class">id<xsl:value-of select="Type" /></xsl:attribute>
<a class="plusminus"><xsl:attribute name="id">plusminus<xsl:value-of select="id" /></xsl:attribute><xsl:attribute name="href">javascript:ExpandEvent('<xsl:value-of select="id" />')</xsl:attribute>+</a>
<xsl:value-of select="Id" /> : <xsl:value-of select="Description" /><br />
<div class="minimized"><xsl:attribute name="id">details<xsl:value-of select="id" /></xsl:attribute>
Typ: <xsl:value-of select="Type" /><br />
Zeile: <xsl:value-of select="Line" /><br />
Datei: <xsl:value-of select="File" /><br />
</div>
</td></tr>
</xsl:template>
 GrüßeT-Rex 
bei Antwort benachrichtigen
Yves3 T-Rex „Ohne Gewähr: idid plusminusjavascript:ExpandEvent : details Typ: Zeile: Datei: “
Optionen

Vielen Dank!
Leider klappt es immer noch nicht ganz, das liegt aber an etwas anderem. Gibt es eigentlich eine Möglichkeit den html Source zu sehen, der aus der XML Datei erstellt wird?
Der IE und der Firefox zeigen immer nur den XML Code.

bei Antwort benachrichtigen
Borlander Yves3 „Vielen Dank! Leider klappt es immer noch nicht ganz, das liegt aber an etwas...“
Optionen

Es gibt Tools die die Transformation ausgeben können...
z.B. Saxon soll das können, wollte es nachher evtl. noch mal testen...

Btw.: Das Kleiner-Als-Zeichen kannst Du über den Zeichencode ausgeben, oder Dir über den Zeichencode eine eigenen Entität erzeugen (wie von HTML bekannt) ;-)


Gruß
Borlander

bei Antwort benachrichtigen
T-Rex Yves3 „Vielen Dank! Leider klappt es immer noch nicht ganz, das liegt aber an etwas...“
Optionen

Für den Internet Explorer gibt es das Tool IEXMLTLS, welches sich in das Kontextmenü des IEs einklinkt.
Die zugrundeliegende Bibliothek MSXML hat jedoch einen Bug: es ignoriert die Zeichenkodierung, die der Entwickler ausgibt, und behauptet, die angezeigten Daten sind UTF-16. Dieser Bug wird vom Tool weitergereicht. Ansonsten ist das Tool wirklich brauchbar und für XML/XSLT-Entwicklungen empfehlenswert.

Poste mal bitte ein Beispiel für Deine XML-Datei, dann schaue ich mal, was ich reißen kann (< bitte als &lt; shreiben).

 GrüßeT-Rex 
bei Antwort benachrichtigen
Yves3 T-Rex „Für den Internet Explorer gibt es das Tool IEXMLTLS, welches sich in das...“
Optionen

Vielen Dank noch mal euch beiden!
Das ist sehr hilfreich, wenn man mal nicht so "blind" arbeitet und den Code sieht, der erstellt wird. ;-)
So hab ich den Fehler ziemlich schnell gefunden.
Ein schiessendes Tag war an einem falschen Ort, deshalb wurde das Attribut "class" nicht richtig eingefügt.
So sollte ich es jetzt eigentlich schaffen.

EDIT: Ja, es funktioniert :)

[Diese Nachricht wurde nachträglich bearbeitet.]

bei Antwort benachrichtigen