Ik heb een pagina met een formulier waarin je in een selectbox moet kiezen uit 2 opties.
De waarden uit het formulier worden in een XML-bestand geplaatst
Ik heb nog een XML-bestand met persoonsgegevens
Nu wil ik met een XSL-bestand een uitvoer maken die er zo uitziet:
<a href="mailto:email">naam</a>
Ik moet dus de persoonsgegevens uit het Persoons-XML-bestand halen en de juiste node selecteren aan de hand van het in het formulier gekozen ID-nummer.
Dus krijg ik een dergelijke XSL-query voor de naam:
Dit geeft een "Expression expected" error.
Mijn vraag is nu: Hoe kan ik wel een dynamische XSL-query maken? Dus zorgen dat het er zo: <xsl:value-of select="document(''persoon.xml'')//personen/persoon[@id=''0'']/naam" /> uitziet als ik als id ''01'' invul en zo: <xsl:value-of select="document(''persoon.xml'')//personen/persoon[@id=''{@id}'']/naam" /> als ik als id ''1'' invoer?
Ik weet dat dit goed te doen is als ik van de XSL-pagina een ASP-pagina maak met het juiste ContentType, maar ik wil het graag gewoon 100% XSL houden. Kan het zoals ik wil of is dit onmogelijk?
BTW, ik weet niet of dit hier thuishoort of in HID, maar ik denk wel hier:)
code:
1
2
3
4
| <select name="selNaam"> <option value="0">Jan</option> <option value="1">Piet</option> </select> |
De waarden uit het formulier worden in een XML-bestand geplaatst
code:
1
2
3
4
| <?xml version="1.0" encoding="ISO-8859-1"?> <namen> <naamID></naamID> </namen> |
Ik heb nog een XML-bestand met persoonsgegevens
code:
1
2
3
4
5
6
7
8
9
10
11
| <?xml version="1.0"?>
<personen>
<persoon id="0">
<naam>Jan</naam>
<email>jan@klaas.nl</email>
</persoon>
<persoon id="1">
<naam>Piet</naam>
<email>piet@friet.nl</email>
</persoon>
</personen> |
Nu wil ik met een XSL-bestand een uitvoer maken die er zo uitziet:
<a href="mailto:email">naam</a>
Ik moet dus de persoonsgegevens uit het Persoons-XML-bestand halen en de juiste node selecteren aan de hand van het in het formulier gekozen ID-nummer.
Dus krijg ik een dergelijke XSL-query voor de naam:
code:
1
| <xsl:value-of select="document('persoon.xml')//personen/persoon[@id='{@id}']/naam" /> |
Dit geeft een "Expression expected" error.
Mijn vraag is nu: Hoe kan ik wel een dynamische XSL-query maken? Dus zorgen dat het er zo: <xsl:value-of select="document(''persoon.xml'')//personen/persoon[@id=''0'']/naam" /> uitziet als ik als id ''01'' invul en zo: <xsl:value-of select="document(''persoon.xml'')//personen/persoon[@id=''{@id}'']/naam" /> als ik als id ''1'' invoer?
Ik weet dat dit goed te doen is als ik van de XSL-pagina een ASP-pagina maak met het juiste ContentType, maar ik wil het graag gewoon 100% XSL houden. Kan het zoals ik wil of is dit onmogelijk?
BTW, ik weet niet of dit hier thuishoort of in HID, maar ik denk wel hier:)
Microsoft SharePoint oplossingen | www.onlinesamenwerken.nl | Persian Dance Helia