Bonjour à tous,
Problème incompréhensible pour le débutant en XML et XSL que je suit :
Je souhaite trier l'affichage de mon fichier XML selon une colonne précisée dans le premier noeud de du fichier XML (balise
Code :
- <TRI> colonne = "B" </TRI>
|
par exemple).
Dans le fichier XSL j'ai cette structure :
Code :
- <xsl:variable name="col" select="NewDataSet/Tri" />
- <xsl:value-of select="$col" />
- <xsl:variable name="truc" select="concat('@', $col)" />
- <xsl:value-of select="$truc" />
- <table cellspacing="0" cellpadding="0" rules="all" border="0" id="DataGridList" style="border-width:0px;width:100%;border-collapse:collapse;">
- <xsl:for-each select="NewDataSet/CUST">
- <xsl:sort select="$truc" />
- ...
|
qui me permet :
- de récupérer la colone de tri dans la balise XML
- de la concaténer avec un @ pour ensuite selectionner l'attribut à choisir pour la colonne
- de vérifier que j'ai bien la colonne selectionnée en l'affichant
- puis je commence le tableau en triant selon la colonne indiquée
Sauf que... ça trie pas
La variable $truc contient pourtant
puisque je l'affiche auparavant.
Et si je mets (en dur)
Code :
- <xsl:sort select="@B" />
|
ça trie.
Si qqun peut m'expliquer ce qu'il manque
---------------
Who LeT The Guilz OuT ? WhO ? wHo ? Who ??