pb xsl boucle type for

pb xsl boucle type for - XML/XSL - Programmation

Marsh Posté le 24-01-2005 à 15:58:18    

J'ai besoin de faire un "pseudo" for via XSL. Le but final est de faire s'afficher une pagination qui pioche la valeur max du nombre de page dans un fichier XML ressemblant à :
 
<?xml version="1.0" encoding="iso-8859-1"?>
<?xml-stylesheet type="text/xsl" href="testfor.xsl"?>
<resultats nbpages="4"/>
 
Je veux donc générer : 1-2-3-4 (avec les liens sur les numéros) à partir du "4". Or, le "for" type C n'existant pas, il faut passer via les templates. J'ai essayé différentes méthodes pour simuler le for via XSL mais aucune ne semble marcher : "Le mot clé xsl:template ne doit pas être utilisé ici."
 
Voici ma fiche XSL :
 
<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">  
<html>
<body>
test de boucle "for" 1->4<br/>
 <xsl:template name="boucle">
  <xsl:param name="debut">1</xsl:param>
  <xsl:param name="fin"><xsl:value-of select="resultats/@nbpages"/></xsl:param>
   <a>
    <xsl:attribute name="href">
     <xsl:value-of select="$debut"/>?numpage=<xsl:value-of select="$debut"/>
    </xsl:attribute>
    -
   </a>
  <xsl:if test="$debut &lt; $fin">
   <xsl:call-template name="boucle">
    <xsl:with-param name="debut" select="($debut)+1" />
    <xsl:with-param name="fin" select="$fin" />
   </xsl:call-template>
  </xsl:if>
 </xsl:template>
</body>
</html>
</xsl:template>  
</xsl:stylesheet>
 
Merci de me sortir de ce pétrin !
 
NB

Reply

Marsh Posté le 24-01-2005 à 15:58:18   

Reply

Marsh Posté le 05-02-2006 à 01:51:05    

ca m'interesse aussi!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed