Mode d'emploi xsl:for-each
en xslt pour obtenir une valeur itérativement à partir d'un fichier xml et la distribuer dans une table à partir de ce fichier.
Par exemple, le fichier xml est le suivant
<order>
<item name ="a"/>
<item name ="b"/>
<item name ="c"/>
<item name ="d"/>
<item name ="e"/>
<item name ="f"/>
<item name ="g"/>
</order>
et la sortie devrait être
a b c d
e f g
la boucle doit compter l'élément et si celui-ci est divisible par 4, elle
doit fermer la rangée actuelle et ajouter une nouvelle rangée, et ainsi de suite
J'utilise le xslt suivant pour cela
mais je ne peux pas l'afficher en format tableau
<xsl:template match="/">
<html>
<body>
<xsl:call-template name ="incr">
<xsl:with-param name ="value">1</xsl:with-param>
<xsl:with-param name ="limit">
<xsl:value-of select ="count(//item)"/>
</xsl:with-param>
</xsl:call-template>
</body>
</html>
</xsl:template >
<xsl:template name="incr">
<xsl:param name="value"/>
<xsl:param name ="limit"/>
<xsl:if test ="$value!=$limit+1">
<xsl:value-of select ="//item[$value]/@name"/>
<xsl:if test ="$value mod 4 =0">
<br/>
<br/>
</xsl:if>
<xsl:call-template name ="incr">
<xsl:with-param name ="value" select ="$value+1"/>
<xsl:with-param name ="limit" select ="$limit"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
S'il vous plaît, aidez-moi à le faire
Merci d'avance