Bonjour,
J'ai besoin de faire une XSLT à laquelle je passe en paramètre le chemin d'une balise, une valeur cible et une condition :
but : remplacer la valeur de la balise par valCible si le contenu de nomElement = conditionTrue
MAis ça ne fonctionne pas.
Auriez-vous une idée?
Merci d'avance.
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 <xsl:param name="nomElement">Nom_Element</xsl:param> <xsl:param name="valCible">Valeur Cible</xsl:param> <xsl:param name="conditionTrue">Condition</xsl:param> <xsl:template match="node() | @*"> <xsl:copy> <xsl:choose> <xsl:when test="name()=$nomElement"> <xsl:if test=".=$conditionTrue"><xsl:value-of select="$valCible"></xsl:value-of></xsl:if> <xsl:if test=".!=$conditionTrue"><xsl:apply-templates select="@* | node()"/></xsl:if> </xsl:when> <xsl:otherwise> <xsl:apply-templates select="@* | node()"/> </xsl:otherwise> </xsl:choose> </xsl:copy> </xsl:template>
Partager