Total blöde Dau + Anfängerfrage
Marko
- xsl
0 Heiko Jägle0 Christoph Schnauß0 Thomas J.S.0 Daniel Thoma0 Alex Wolff0 Marko
Hallo Forum,
ich bin gerade beim Spielen mit XSL, funktioniert soweit ja auch ganz gut. Nur wie verdammt nochmal krieg ich den Processor dazu Ausgaben im Ziel Dokument (HTML) auch in Attribute von HTML Tags reinzuschreiben, Beispiel:
<td colspan="<xsl:value-of select="count(row[position()=1]/field)"/>">
Sollte ergeben:
<td colspan="5">
Der XSL Ausdruck geht, nur im Tag gibt es Probleme.
Danke und Gruss
Marko
Hallo Forum,
Hi Forumsleser!
ich bin gerade beim Spielen mit XSL, funktioniert soweit ja auch ganz gut. Nur wie verdammt nochmal krieg ich den Processor dazu Ausgaben im Ziel Dokument (HTML) auch in Attribute von HTML Tags reinzuschreiben, Beispiel:
<td colspan="<xsl:value-of select="count(row[position()=1]/field)"/>">
Auf den ersten Blick sind die Anführungszeichen nicht richtig. Innerhalb von colspan="..." verwendest du wieder die gleichen doppelten Anführungszeichen. Somit hört für den Processor die Zeichenkette vorzeitig auf. Probier mal
<td colspan="<xsl:value-of select='count(row[position()=1]/field)' />">
Ob weitere Fehler enthalten sind, hab ich noch nicht probiert.
Heiko
hallo Marko,
<td colspan="<xsl:value-of select="count(row[position()=1]/field)"/>">
Da stimmt einiges mit der Verschachtelung nicht, wenn ich das richtig sehe. Ich lösche mal alle Zeichen, die korrekt sind und lasse nur das "Problem" stehen:
<<"""">>
Du siehst, was ich meine? Du hast innerhalb eines Tags ein weiteres notiert, und innerhalb von Anführungszeichen nochmals Anführungszeichen. Das beißt sich.
Probiers einfach mit Maskierung (Backslash) oder versuche, eines der Anführungszeichen-Paare durch einfache Anführungszeichen zu ersetzen (Hochkomma) und eine der Klammern durch andere Klammern. Viuelleicht reicht es bereits, einmal Hochkommas zu setzen, ich habs jetzt auf die Schnelle nicht dfurchprobiert.
Christoph S.
Hallo,
ich bin gerade beim Spielen mit XSL, funktioniert soweit ja auch ganz gut. Nur wie verdammt nochmal krieg ich den Processor dazu Ausgaben im Ziel Dokument (HTML) auch in Attribute von HTML Tags reinzuschreiben, Beispiel:
<td colspan="<xsl:value-of select="count(row[position()=1]/field)"/>">
Eben so nicht. ;-) In einem Attributwert darf weder " noch < unmaskiert vorkommen.
<td>
<xsl:attribut name="colspan">
<xsl:value-of select="count(row[position()=1]/field)"/>
</xsl:attribut>
</td>
Grüße
Thomas
Hallo,
<td colspan="<xsl:value-of select="count(row[position()=1]/field)"/>">
Tags innerhalb von Attributen sind in XML nicht zulässig. Du kannst, wenn du statt den " " schreibst, natürlich auch Markup in ein Attribut schreiben, es wird aber nicht als solches interpretiert.
<td><xsl:attribute name="colspan">count(row[position()=1]/field)</xsl:attribute></td>
wäre wohl die Lösung des Problems.
Grüße
Daniel
Hallo Daniel,
<td><xsl:attribute name="colspan">count(row[position()=1]/field)</xsl:attribute></td>
wäre wohl die Lösung des Problems.
Sicher? Ganz sicher??
Grüße
Thomas
Hallo,
Sicher? Ganz sicher??
Urx nein. Aber Du hast es ja zum Glück richtig gepostet.
Grüße
Daniel
Hallo Forum,
hallo.
...wie verdammt nochmal krieg ich den Processor dazu Ausgaben im Ziel Dokument (HTML) auch in Attribute von
HTML Tags reinzuschreiben...
es gibt einen zweiten weg, den ich meistens bevorzuge: schreib alles, was an html-code ausgegeben werden soll, in kommentaren <![CDATA[]]>. das hat den vorteil, dass alle zeichen erlaubt sind, also nix mit backslash und so.
dein beispiel würde dann so aussehen:
<![CDATA[<td colspan="]]><xsl:value-of select="count(row[position()=1]/field)"/><![CDATA[">]]>
mfg, alex
Hallo Alex,
es gibt einen zweiten weg, den ich meistens bevorzuge: schreib alles, was an html-code ausgegeben werden soll, in kommentaren <![CDATA[]]>. das hat den vorteil, dass alle zeichen erlaubt sind, also nix mit backslash und so.
Wo hast du bitte in XML Probleme mit backslash?
Wo hast du in HTML-Code probleme mit Zeichen??
dein beispiel würde dann so aussehen:
<![CDATA[<td colspan="]]><xsl:value-of select="count(row[position()=1]/field)"/><![CDATA[">]]>
Sorry, aber das ist wirklich furchtbar (IMHO)!
Das macht keinen wirklichen Sinn und ist zudem extremst fehleranfällig.
Grüße
Thomas
Hallo,
vielen Dank, ich hab jetzt wieder etwas mehr an XSL verstanden. Ich muss sagen, dass auch die kleinen Erörterungen die in Folge solch einfacher Fragen entstehen sehr lehrreich sein können.
Gruss
Marko