Hallo,
ich bin gerade dabei mich in die XML/XSLT-Thematik einzuarbeiten (bin also Newbie
und stoße da an ein Verständnis/Umsetzungs-Problem.
Meine XML-Datei ist so aufgebaut und soll per XSLT als HTML ausgegeben werden:
Alles anzeigen
Ich möchte jetzt über ein Dropdown (Formular: <select>), daß alle Werte von SectionTitle und den Section[@Name] als zu übergebenden Wert enthält (also so: <option value="Section[@Name]">SectionTitle </option>), genau die entsprechende OutputData im Dokument anzeigen lassen. Also wenn ich im Dropdown ZXY auswähle wird nur die Section Sec2 angezeigt, usw.
Hier mein Versuch der XSLT Datei:
Alles anzeigen
Mein Verständnis-Problem: Wie kann ich die vom POST-Formular (das select feld) übergebenen Variablen so verwenden, daß ich sie in die choose-abfrage richtig einbaue. Wie kann ich generell Post/Get-Variablen einbinden? Sitze jetzt schon ne weile dran und langsam schwirrt mir der Kopf
Wäre sehr dankbar für eine Hilfe / Denkanstoss / Hinweis!
1000Dank & schöne Grüße!
Björn
ich bin gerade dabei mich in die XML/XSLT-Thematik einzuarbeiten (bin also Newbie

Meine XML-Datei ist so aufgebaut und soll per XSLT als HTML ausgegeben werden:
Quellcode
- <?xml version="1.0" encoding="iso-8859-1" ?>
- <?xml-stylesheet type="text/xsl" href="style.xsl" version="1.0"?>
- <Root>
- <Section Name="Sec1">
- <SectionTitle>Xyz</SectionTitle>
- <OutputData Name="XYZ">
- <DataTitle>First Header Xyz</DataTitle>
- <DataInfo>Ein paar Infos/Text 1.</DataInfo>
- </OutputData>
- </Section>
- <Section Name="Sec2">
- <SectionTitle>ZXY</SectionTitle>
- <OutputData Name="ZXY">
- <DataTitle>First Header ZXY</DataTitle>
- <DataInfo>Ein paar Infos/Text 2.</DataInfo>
- </OutputData>
- </Section>
- <Section Name="Sec3">
- <SectionTitle>TZR</SectionTitle>
- <OutputData Name="TZR">
- <DataTitle>First Header TZR</DataTitle>
- <DataInfo>Ein paar Infos/Text 3.</DataInfo>
- </OutputData>
- </Section>
- ...
- </Root>
Ich möchte jetzt über ein Dropdown (Formular: <select>), daß alle Werte von SectionTitle und den Section[@Name] als zu übergebenden Wert enthält (also so: <option value="Section[@Name]">SectionTitle </option>), genau die entsprechende OutputData im Dokument anzeigen lassen. Also wenn ich im Dropdown ZXY auswähle wird nur die Section Sec2 angezeigt, usw.
Hier mein Versuch der XSLT Datei:
Quellcode
- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
- <xsl:output method="html"/>
- <xsl:template match="/Root">
- <html>
- <head>
- <title>TEST</title>
- </head>
- <body>
- <form name="f1" method="post">
- <select name="header" onchange="self.document.f1.submit();">
- <option>---</option>
- <xsl:apply-templates select="Section/SectionTitle"/></select>
- </form>
- <br/>
- <br/>
- <xsl:choose>
- <xsl:when test="select[@name='header']='ZXY'">
- <xsl:apply-templates select="//Section[@Name='Sec2']/OutputData/*"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:apply-templates select="//Section[@Name='Sec1']/OutputData/*"/>
- </xsl:otherwise>
- </xsl:choose>
- </body>
- </html>
- </xsl:template>
- <xsl:template match="Section/SectionTitle">
- <option><xsl:apply-templates/></option>
- </xsl:template>
- <xsl:template match="OutputData/DataTitle">
- <h1><xsl:apply-templates/></h1>
- </xsl:template>
- <xsl:template match="OutputData/DataInfo">
- <i><xsl:apply-templates/></i>
- </xsl:template>
- </xsl:stylesheet>
Mein Verständnis-Problem: Wie kann ich die vom POST-Formular (das select feld) übergebenen Variablen so verwenden, daß ich sie in die choose-abfrage richtig einbaue. Wie kann ich generell Post/Get-Variablen einbinden? Sitze jetzt schon ne weile dran und langsam schwirrt mir der Kopf

Wäre sehr dankbar für eine Hilfe / Denkanstoss / Hinweis!
1000Dank & schöne Grüße!
Björn