Bonjour a tous et a toutes,
voici mon problème je voudrais afficher des liens dans un ordre bien précis (grâce au N° contenu dans col[7]) et trier ceux ci par groupe (grâce au nom de groupe contenu dans col[8]) , afin de rassembler les liens d'un meme groupe entre eux et de les afficher selon un ordre défini par col[7].
Pour mieux comprendre voici une partie de mon .XML:
Pour ce faire j'ai crée la code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 <functions> <header> <col name="FCT_ID"/> <col name="MODULE_ID"/> <col name="FUNCTION"/> <col name="DISPLAY"/> <col name="LINK"/> <col name="HELP_URL"/> <col name="MENU_ORDER"/> <col name="MENU_GROUP"/> </header> <row> <col>10</col> <col>1</col> <col>Outsourcer Informations</col> <col>1</col> <col>UOData.html</col> <col></col> <col>9</col> <col>Outsourcer</col> </row>
Et j'obtien en sortie ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 <xsl:for-each select="row"> <xsl:sort select="col[7]" data-type="number" order="ascending"/> <xsl:sort select="col[8]" data-type="text" order="ascending"/> <xsl:if test="col[4] != 0"> <xsl:if test="col[8] != 0"> <table border="0" cellpadding="0" cellspacing="0" width="168"> <tr> <td background="decoTd.gif" height="1" width="3"></td> </tr> <tr> <td class="group"><xsl:value-of select="col[8]"/></td> </tr> <tr> <td background="decoTd.gif" height="1" width="3"></td> </tr> </table> <table border="0" cellpadding="0" cellspacing="0" width="168"> <tr> <td background="decoTd.gif" height="1" width="3"></td> </tr> <tr> <td><xsl:text disable-output-escaping="yes"><![CDATA[ ]]></xsl:text><A href="{col[5]}" target="main"><xsl:value-of select="col[3]"/></A></td> </tr> <tr> <td background="decoTd.gif" height="1" width="3"></td> </tr> </table> </xsl:if> <xsl:if test="col[8] = 0"> <table border="0" cellpadding="0" cellspacing="0" width="168"> <tr> <td background="decoTd.gif" height="1" width="3"></td> </tr> <tr> <td><A href="{col[5]}" target="main"><xsl:value-of select="col[3]"/></A></td> </tr> <tr> <td background="decoTd.gif" height="1" width="3"></td> </tr> </table> </xsl:if> </xsl:if> </xsl:for-each>
Et je voudrais obtenir ceci :groupe1
NomLien1 du Groupe1
groupe1
NomLien2 du Groupe1
groupe1
NomLien3 du Groupe1
groupe2
NomLien1 du Groupe2
groupe2
NomLien2 du Groupe2
...
groupeN
NomLien1 du GroupeN
Comment puis je faire cela, je suis un peu perdu, je m'embrouille dans mon for-each.groupe1
NomLien1 du Groupe1
NomLien2 du Groupe1
NomLien3 du Groupe1
groupe2
NomLien1 du Groupe2
NomLien2 du Groupe2
...
groupeN
NomLien1 du GroupeN
Merci de votre aide a tous,
Partager