Bonjour,
Voici une partie de mon code XSL actuel qui fonctionne normalement :
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.
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>
J'aurais aimé pouvoir faire quelque chose pour factoriser tout ça et obtenir un code de ce genre :
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.
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>
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.
Partager