Hallo alle zusammen,
ich möchte gerne nur Checkboxen erzeugen lassen, wenn eine Komponente noch nicht angegeben ist. Oh je, irgendwie ist das nicht so eindeutig. Also in Java würde der Sachverhalt so aussehen:
Also und dass will ich mit XSL. Meine XML sieht so aus:
an dieser XML kann ich nichts mehr ändern. Und meine XSL in dem Bereich sieht so aus:
Meine Frage ist, ob es möglich ist den obigen Java-Code in XSL zu schreiben, wenn ja wie? Und wenn nein, kann ich das irgendwie mit Javascript machen und wenn ja wie und wie würde ich es dann in die XSL wieder einbinden.
MfG
ich möchte gerne nur Checkboxen erzeugen lassen, wenn eine Komponente noch nicht angegeben ist. Oh je, irgendwie ist das nicht so eindeutig. Also in Java würde der Sachverhalt so aussehen:
Code:
int temp;
for(String komponente : komponenten){
if(temp != null){
if(!temp.equals(komponente)){
// erzeuge eine Checkbox mit genau dieser Komponente als Label
temp = komponente;
}
}
else{
// erzeuge eine Checkbox mit genau dieser Komponente als Label
temp = komponente;
}
}
Also und dass will ich mit XSL. Meine XML sieht so aus:
Code:
<?xml version="1.0" encoding="UTF-8" ?>
- <Rowsets DateCreated="2009-04-09T10:43:30" EndDate="2009-04-09T10:43:26" StartDate="2009-04-09T09:43:26" Version="12.0.6 Build(12)">
- <Rowset>
- <Columns>
<Column Description="" MaxRange="1" MinRange="0" Name="bla" SQLDataType="1" SourceColumn="bla" />
</Columns>
- <Row>
<bla>irgendwas</bla>
</Row>
</Rowset>
- <Rowset>
- <Columns>
<Column Description="" MaxRange="100" MinRange="0" Name="Komponente" SQLDataType="1" SourceColumn="Komponente" />
<Column Description="" MaxRange="100" MinRange="0" Name="Menge" SQLDataType="4" SourceColumn="Menge" />
</Columns>
- <Row>
<Komponente>1316.084</Komponente>
<Menge>864</Menge>
</Row>
- <Row>
<Komponente>1316.084</Komponente>
<Menge>432</Menge>
</Row>
- <Row>
<Komponente>2222.222</Komponente>
<Menge>432</Menge>
</Row>
- <Row>
<Komponente>2222.222</Komponente>
<Menge>432</Menge>
</Row>
</Rowset>
</Rowsets>
an dieser XML kann ich nichts mehr ändern. Und meine XSL in dem Bereich sieht so aus:
HTML:
<form id="form" action="seite" method="GET">
<xsl:for-each select="Rowsets/Rowset[2]/Row">
<span style="padding-left:0px; padding-top: 0px">
<input type="checkbox" id="komponente">
<label for="komponente"><xsl:value-of select="Komponente"/></label>
</input>
</span>
<span style="padding-left:30px">
<select id="menge">
<xsl:for-each select="//Rowset[2]/Row"> <option value="Menge"> <xsl:value-of select="Menge"/> </option>
</xsl:for-each>
</select>
</span>
</xsl:for-each>
<span style="padding-left:40px">
<input id="buttonOK" type="submit" value="OK"/>
</span>
</form>
Meine Frage ist, ob es möglich ist den obigen Java-Code in XSL zu schreiben, wenn ja wie? Und wenn nein, kann ich das irgendwie mit Javascript machen und wenn ja wie und wie würde ich es dann in die XSL wieder einbinden.
MfG