Ich hatte hier:
http://forum.de.selfhtml.org/?t=186456&m=1238327
Mein Problem schonmal unter dem Themenbereich "xsl" adressiert. Nach ein bisschen probieren ist das ganze wohl besser hier aufgehoben.
Folgendes:
meine XML-Datei sieht in etwa so aus:
<table>
<Rep>Max</Rep>
<datum>15.4.</datum>
</table>
<table>
<Rep>Max</Rep>
<datum>14.4.</datum>
</table>
<table>
<Rep>Martin</Rep>
<datum>11.02.</datum>
</table>
Ich hab eine Auswahlliste aus dieser xml-Datei erzeugt und übergebe den gewählten Wert an eine Javascriptfunktion:
<form name="auswahl">
<select name="person" size="1" >
<xsl:for-each select="table/[generate-id() = generate-id(key('Rep', Rep)[1])]">
<xsl:element name="option">
<xsl:attribute name="value">
<xsl:value-of select="Rep"/>
</xsl:attribute>
<xsl:value-of select="Rep"/>
</xsl:element>
</xsl:for-each>
</select>
<input type="button" value="Go" onClick=
"test(document.auswahl.person.value)"/>
</form>
Ich möchte nun in der Funktion den Wert vergleichen mit dem "Rep"-Element und mir einfach alle Datumsangaben ausgeben lassen. Das ganze versuche ich wiefolgt:
<script language="JavaScript">
function test(erg){
document.write("<xsl:for-each select='report/tables/table'>");
document.write("<xsl:if test='Rep = " + erg + "'><xsl:value-of select='Date'/></xsl:if>");
document.write("</xsl:for-each>");
}
</script>
Das Problem ist: ich bekomme den Wert der Variable "erg" nicht wieder in die Test-Funktion hinein. Ich weiß nicht, wie ich die Variable maskieren kann.. kann mir jemand helfen?
Gruß
Benjamin