[XSL]: acces au variable
Résolu/Fermé
Fra
-
19 avril 2005 à 14:25
fras34 Messages postés 92 Date d'inscription mardi 19 avril 2005 Statut Membre Dernière intervention 27 mai 2007 - 19 avril 2005 à 17:55
fras34 Messages postés 92 Date d'inscription mardi 19 avril 2005 Statut Membre Dernière intervention 27 mai 2007 - 19 avril 2005 à 17:55
7 réponses
teebo
Messages postés
33491
Date d'inscription
jeudi 14 octobre 2004
Statut
Modérateur
Dernière intervention
24 février 2011
1 793
19 avril 2005 à 17:40
19 avril 2005 à 17:40
Bon sans garantie mais un truc du genre ne marcherait pas?
Je me souviens que je m'étais battu avec ce genre de choses aussi...
<xsl:variable name="chanelTitre"> <xsl:choose> <xsl:when test="rss/channel/configs/categorie != 'all' "> rss/channel/configs/categorie </xsl:when> <xsl:otherwise> rss/channel/title </xsl:otherwise> </xsl:choose> </xsl:variable>
Je me souviens que je m'étais battu avec ce genre de choses aussi...
teebo
Messages postés
33491
Date d'inscription
jeudi 14 octobre 2004
Statut
Modérateur
Dernière intervention
24 février 2011
1 793
19 avril 2005 à 17:12
19 avril 2005 à 17:12
Un truc comme ça ne marcherait pas aussi bien?
<xsl:variable name="chanelLink"/>
<xsl:template match="/">
<xsl:variable name="chanelLink" select="rss/channel/link"/>
<html>
<xsl:call-template name="data"></xsl:call-template>
</html>
</xsl:template>
<xsl:template name="data">
<a href="{$chanelLink}"><xsl:value-of select="rss/channel/title"/></a>
</xsl:template>
<xsl:variable name="chanelLink"/>
<xsl:template match="/">
<xsl:variable name="chanelLink" select="rss/channel/link"/>
<html>
<xsl:call-template name="data"></xsl:call-template>
</html>
</xsl:template>
<xsl:template name="data">
<a href="{$chanelLink}"><xsl:value-of select="rss/channel/title"/></a>
</xsl:template>
teebo
Messages postés
33491
Date d'inscription
jeudi 14 octobre 2004
Statut
Modérateur
Dernière intervention
24 février 2011
1 793
19 avril 2005 à 17:34
19 avril 2005 à 17:34
Au fait pourquoi tu veux utiliser une variable?
teebo
Messages postés
33491
Date d'inscription
jeudi 14 octobre 2004
Statut
Modérateur
Dernière intervention
24 février 2011
1 793
19 avril 2005 à 16:41
19 avril 2005 à 16:41
Salut,
Je crois qu'il faut que tu définisse chanelLink en dehors du template match, quite à ne lui donner sa valeur qu'à ce moment là...
Je crois qu'il faut que tu définisse chanelLink en dehors du template match, quite à ne lui donner sa valeur qu'à ce moment là...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
fras34
Messages postés
92
Date d'inscription
mardi 19 avril 2005
Statut
Membre
Dernière intervention
27 mai 2007
36
19 avril 2005 à 17:08
19 avril 2005 à 17:08
Ok, si je sort la variable du macth ça fontionne.
Mais en plus il faut que l'attibution de la variable soit conditionnel.
Et la ça genere une erreur.
Mais en plus il faut que l'attibution de la variable soit conditionnel.
<xsl:choose> <xsl:when test="rss/channel/configs/categorie != 'all'"> <xsl:variable name="chanelTitre" select="rss/channel/configs/categorie"/> </xsl:when> <xsl:otherwise> <xsl:variable name="chanelTitre" select="rss/channel/title"/> </xsl:otherwise> <xsl:choose> <xsl:template match="/"> <html> <xsl:call-template name="data"></xsl:call-template> </html> </xsl:template> <xsl:template name="data"> <a href="{$chanelLink}"><xsl:value-of select="rss/channel/title"/></a> </xsl:template>
Et la ça genere une erreur.
fras34
Messages postés
92
Date d'inscription
mardi 19 avril 2005
Statut
Membre
Dernière intervention
27 mai 2007
36
19 avril 2005 à 17:25
19 avril 2005 à 17:25
La variable du lien fonctionne, merci.
Mais pas celle du titre. Elle ne prend pas en compte que categorie != 'all'
Mais pas celle du titre. Elle ne prend pas en compte que categorie != 'all'
<!-- le lien : ok --> <xsl:variable name="chanelLink" select="rss/channel/link"/> <!-- variable du titre --> <xsl:variable name="chanelTitre"/> <xsl:choose> <xsl:when test="rss/channel/configs/categorie != 'all' "> <xsl:variable name="chanelTitre" select="rss/channel/configs/categorie"/> </xsl:when> <xsl:otherwise> <xsl:variable name="chanelTitre" select="rss/channel/title"/> </xsl:otherwise> </xsl:choose> <!-- Masque --> <xsl:template match="/"> <html> <head> <title><xsl:copy-of select="$chanelTitre"/></title> </head> <body> <xsl:call-template name="data"></xsl:call-template> </body> </html> </xsl:template> <xsl:template name="data"> <a href="{$chanelLink}"><xsl:value-of select="rss/channel/title"/></a> </xsl:template>
fras34
Messages postés
92
Date d'inscription
mardi 19 avril 2005
Statut
Membre
Dernière intervention
27 mai 2007
36
19 avril 2005 à 17:55
19 avril 2005 à 17:55
YESSS
Merci je galère la dessus depuis ce matin
Trop cool
Merci je galère la dessus depuis ce matin
Trop cool