Bonjour,

Voici une partie de mon code XSL actuel qui fonctionne normalement :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
 
<xsl:for-each select="bouton">
				<td>
 
				<xsl:choose>
					<xsl:when test=" @type = 'simple' "><input type="button" name="{name}" value="{value}" onClick="javascript: touche('{value}');" /></xsl:when>
					<xsl:when test=" @type = 'resultat' "><input type="button" name="{name}" value="{value}" onClick="javascript:resultat('{value}');" /></xsl:when>
					<xsl:when test=" @type = 'raz' "><input type="button" name="{name}" value="{value}" onClick="javascript:raz();" /></xsl:when>
     				 </xsl:choose>
 
				</td>
			</xsl:for-each>
Ici dans les 3 cas du xsl:choose, on a la même ligne comme résultat mis à part la partie de l'attribut onClick.

J'aurais aimé pouvoir faire quelque chose pour factoriser tout ça et obtenir un code de ce genre :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
<xsl:for-each select="bouton">
				<td>
				<input type="button" name="{name}" value="{value}" onClick="javascript : {
				<xsl:choose>
					<xsl:when test=" @type = 'simple' "> touche('{value}')</xsl:when>
					<xsl:when test=" @type = 'resultat' "> resultat('{value}')</xsl:when>
					<xsl:when test=" @type = 'raz' "> onClick="javascript:raz()</xsl:when>
     				 </xsl:choose>
     				 };"/>
				</td>
			</xsl:for-each>
Ainsi, je fais le test dans le balise onClick la seule qui varie et selon la valeur de l'attribut type je place dans la balise quelque chose de différent.

Ceci est il possible en XSL (j'ai l'habitude de faire ça en PHP par exemple mais là en XSL je sais pas du tout si c'est possible) ?
Et si oui comment faut il procéder ?

Merci d'avance.