From: Denis BAYARD (denis.bayard@edfgdf.fr)
Date: 19/11/2003 - 12:00
Mise à part qu'il vaut mieux utiliser la solution de Vincent (cf réponse
sur xsl:if), ici celà ne marche pas car au moment du test, c'est la chaîne
"/RgSearchOutput1/CABIN_OUT/CODE" qui est comparée, et non pas la valeur de l'élément.
Il faut utiliser
<xsl:with-param name="tag"><xsl:value-of
select="/RgSearchOutput1/CABIN_OUT/CODE"/></xsl:with-param>
au lieu de
<xsl:with-param
name="tag">/RgSearchOutput1/CABIN_OUT/CODE</xsl:with-param>
Veuillez répondre à xml-tech@xmlfr.org
Envoyé par : xml-tech-bounce@xmlfr.org
Pour : xml-tech@xmlfr.org
cc : (ccc : Denis BAYARD/E/EDFGDF/FR)
Objet : [xml-tech] <xsl:template>
Bonjour,
Je fais un <xsl:call-template> avec 3 parametres. Tout marche bien mis à
part quelque chose. Quand je fais <xsl:when test="$tag=$valeur"> dans le
template, ca marche pas, par contre quand j'oublie le param tag et que je
fais : xsl:when test="/RgSearchOutput1/CABIN_OUT/CODE =$valeur"> ca marche
tres bien. Je ne vois pas pourquoi... Et j'aimerais bien résoudre ce
problème car ainsi ca me permettrait d'utiliser un seul template pour
toutes mes listes de selection.
<select>
<xsl:attribute name="name">CABIN</xsl:attribute>
<xsl:attribute name="checked"><xsl:value-of
select="./CABIN_OUT/CODE"/></xsl:attribute>
<xsl:attribute name="class">content_listbox</xsl:attribute>
<xsl:call-template name="selection">
<xsl:with-param
name="tag">/RgSearchOutput1/CABIN_OUT/CODE</xsl:with-param>
<xsl:with-param name="valeur">B</xsl:with-param>
<xsl:with-param name="titleValue">Business</xsl:with-param>
</xsl:call-template>
</select>
avec :
<xsl:template name="selection">
<xsl:param name="valeur"/>
<xsl:param name="tag"/>
<option>
<xsl:attribute name="value"><xsl:value-of
select="$valeur"/></xsl:attribute>
<xsl:choose>
<xsl:when test="$tag=$valeur">
<xsl:attribute name="selected">selected</xsl:attribute>
</xsl:when>
</xsl:choose>
<xsl:value-of select="$titleValue"/>
</option>
</xsl:template>
A+
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Archive générée par hypermail 2.1.3 le 28/06/2004 - 11:06 UTC
webmaster@xmlfr.org
|