Xsl

Canard007 Messages postés 5936 Statut Contributeur -  
Canard007 Messages postés 5936 Statut Contributeur -
hello all
j'aimerai bien dans mon fichier xsl pouvoir recuperer le contenu d'un noeud xml l'evaluer et ecrire une strig en fonction du resultat dans un tableau html de quelle maniere je pourrai faire ca.
J'aimerai bien egalement changer le bgcolor d'une cellule en fonction de la valeur d'un noeud si quelqu'un a une source pour m'aider.

9 réponses

teebo Messages postés 33570 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
Salut,
Valeur ou nom du noeud?
Bon suite après manger :o)
0
Canard007 Messages postés 5936 Statut Contributeur 215
 
la valeur
<mon noeud>ma valeur</mon noeud>
si ma valeur = x
alors la bgcolor de la cellule est XXXXXx (RVB)
et le contenu de la cellule est ...

bon ap au fait ;-)
0
teebo Messages postés 33570 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
Tu peux tester la valeur non?
0
teebo Messages postés 33570 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
<xsl:if test="@value='x'">


sans oublier de fermer la balise if après ;o)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Canard007 Messages postés 5936 Statut Contributeur 215
 
en fait la valeur contient true ou false je voudrai pouvoir mettre la couleur a rouge si c est faux et a bleu si c est vrai et mettre un petit texte selon les cas (nom du noeud)
pour l'instant j'ai ca:
<td><xsl:value-of select="MorningCheck/SMNP/comment"/></td>
mais je n affiche que true ou false...il faudrai que je rende cela un peu plus dynamique en y integrant par exemple un peu de javascript
j'ai essayé:
function SetBackGround(texte)
{
if(texte=="TRUE")
{
return "00FF00"
}
else
{
return "FF0000"
}
}

et dans le <body>
<td bgcolor="SetBackGround('<xsl:value-of select="MorningCheck/SMNP/comment"/>" ')><xsl:value-of select="MorningCheck/SMNP/comment"/></td>

mais il râle a cause des < > entre les ( )
je suis pas un nexpert en javascript alors il y a peu etre un moyen de le faire autrement..ou de mieux l'ecrire...
0
teebo Messages postés 33570 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
Tu veux faire le test en js? Je croyais que tu le voulais en xsl 8-) En js je n'y connais rien...
0
Canard007 Messages postés 5936 Statut Contributeur 215
 
pour pouvoir faire des modif des valeurs je ne voit pas comment faire
ton truc la:
<xsl:if test="@value='x'">

il me permet ensuite d'ecrire une valeur ou une autre sur la page en fonction du resultat?
0
teebo Messages postés 33570 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
Bien sûr, c'est le but du xsl...

Regarde

<?xml version="1.0" encoding="ISO-8859-2"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" version="1.0" encoding="ISO-8859-2" indent="yes"/>
<xsl:param name="upperCase" select="'ABCDEFGHIJKLMNOPQRSTUVWXYZ éè'"/>
<xsl:param name="lowerCase" select="'abcdefghijklmnopqrstuvwxyz_ee'"/>
<xsl:template match="listmedia">
case $1 in<xsl:for-each select="media"><xsl:sort select="@name"/><xsl:if test="@type='radio'">
<xsl:variable name="fname" select="translate(@name,$upperCase,$lowerCase)"/>
"<xsl:value-of select="$fname"/>") <xsl:choose>
<xsl:when test="flux/@type='ogg'">xmms <xsl:value-of select="flux[@type='ogg']/@adress"/></xsl:when>
<xsl:when test="flux/@type='m3u'">xmms <xsl:value-of select="flux[@type='m3u']/@adress"/></xsl:when>
<xsl:when test="flux/@type='real'">realplay <xsl:value-of select="flux[@type='real']/@adress"/></xsl:when>
<xsl:when test="flux/@type='ASX'">mplayer -afm acm -cache 5000 <xsl:value-of select="flux[@type='ASX']/@adress"/></xsl:when>
</xsl:choose>;;
</xsl:if>
</xsl:for-each>
*) echo "Vous devez entrez une radio parmi la liste suivante:"
<xsl:for-each select="media"><xsl:sort select="@name"/><xsl:if test="@type='radio'">
echo "<xsl:value-of select="translate(@name,$upperCase,$lowerCase)"/>"
</xsl:if></xsl:for-each>
esac
</xsl:template>
</xsl:stylesheet>



Selon le type de flux, je choisi quel player ajouté dans le fichier de sorti (ce n'est pas du html ici mais juste un script nunux mais on s'en fout...)
0
Canard007 Messages postés 5936 Statut Contributeur 215
 
ok merci je vais voir ce que je peux faire avec ca deja...
0