Bonjour à tous
Après plusieurs heures de recherche, je me tourne vers la communauté (très active) de dvp afin de m'aider un peu.
Je voudrais pouvoir utiliser following-sibling pour tester si un élément existe, et auquel cas récupérer un de ces fils.
Voilà mon XML:
J'aimerais récupérer le nom associé à un noeud, tester si un noeud frère de parent 0 existe, et auquel cas relancer mon template qui récupère le nom.
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 <base> <elem> <id>1</id> <nom>elem1</nom> <parent>0</parent> </elem> <elem> <id>2</id> <nom>elem2</nom> <parent>0</parent> </elem> ... <elem> <id>56</id> <nom>elem56</nom> <parent>2</parent> </elem> </base>
Le template dans mon XSL est actuellement comme ça:
Je remercie d'avance la (les) âme(s) charitable(s) qui m'aideront à régler ce problème.
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 <xsl:template name="cellule"> <xsl:param name="nbElem" /> <xsl:choose> <xsl:when test="$nbElem=0"> <div> <xsl:attribute name="class">tr</xsl:attribute> <xsl:attribute name="style">height: 50px;</xsl:attribute> <xsl:text>*</xsl:text> </div> <div> <xsl:attribute name="class">tr center-align</xsl:attribute> <div> <xsl:attribute name="class">td30</xsl:attribute> <xsl:value-of select="/following-sibling::*/nom" /><!--Valeur nom du noeud--> </div> <!--Test prochain noeud--> <xsl:call-template name="cellule"> <xsl:with-param name="nbElem" select="1" /> </xsl:call-template> </div> </xsl:when>
Partager