Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1264 connectés 

  FORUM HardWare.fr
  Programmation

  [XSLT] comment faire if a<b avec ce language de merde ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[XSLT] comment faire if a<b avec ce language de merde ?

n°39976
duch
Posté le 15-06-2001 à 11:22:37  profilanswer
 

Excusez-moi pour ce titre mais je suis remonté là.
 
ça fait 3 heures que je me tape tous les tutos dispos, dans toutes les langues possibles et imaginables, et y'a rien concernant les tests. Tous les exemples données font des tests sur des égalités ou sur des count d'éléments, j'm'en fous des = j'veux faire des vrais tests.
 
voici ce que j'ai fait :  
 
un test qui marche :  
 
<xsl:if test="@val='0'">
 <xsl:attribute name="bgcolor">red</xsl:attribute>
</xsl:if>
 
et un test qui ne marche pas :  
 
<xsl:if test="@val=<'0'">
 <xsl:attribute name="bgcolor">red</xsl:attribute>
</xsl:if>
 
evidemment le problème viens du <, mais par quoi faut-il le rmeplcer, mystère...
 
si au passage quelq'un conaissait un tuto digne de ce nom ça m'arrangerait :D

mood
Publicité
Posté le 15-06-2001 à 11:22:37  profilanswer
 

n°39989
prettysmil​e
Sourire est un devoir social
Posté le 15-06-2001 à 11:42:26  profilanswer
 

j'ai trouvé ca:
(ici: http://www.ibiblio.org/xml/books/b [...] s/14.html)
 
Booleans are also produced as the result of expressions involving these operators:
 
= equal to  
!= not equal to  
< less-than (really < )  
> greater-than  
<= less-than or equal to (really <=)  
>= greater-than or equal to  
 
j'ai pas testé, si ca marche, fais moi le savoir :)

 

[edit]--Message édité par prettysmile--[/edit]

n°39991
duch
Posté le 15-06-2001 à 11:46:36  profilanswer
 

404 FILE NOT FOUND
 pour l'url :sweat:
 
sinon pour les signes, je les connais merci :D, mais ça ne marche pas

n°40003
JPA
Posté le 15-06-2001 à 12:01:07  profilanswer
 

Fallait enlever la ) à la fin de l'URL !!!
 
Dans cette page on trouve :
Caution
 
The < sign is illegal in attribute values. Consequently, it must be replaced by < even when used as the less-than operator

n°40004
prettysmil​e
Sourire est un devoir social
Posté le 15-06-2001 à 12:01:40  profilanswer
 

pour l'adresse essaie en passant par là (c la même chose)
 
 http://metalab.unc.edu/xml/books/bible/updates/14.html  
pour les signes: désolée ils ont été interprétés: je sais pas comment empecher cela, alors je balance des espaces)
= equal to  
!= not equal to  
< less-than (really & l t ; )  
> greater-than  
<= less-than or equal to (really  & l t ; = )  
>= greater-than or equal to  
Caution

n°40009
duch
Posté le 15-06-2001 à 12:08:34  profilanswer
 

ah ok, merci :D

n°40244
BifaceMcLe​OD
The HighGlandeur
Posté le 15-06-2001 à 21:56:13  profilanswer
 

prettysmile> Il faut utiliser une entité supplémentaire pour pouvoir afficher une entité. Exemple : &#38;lt; pour pourvoir afficher &lt;.
 
La vie est simple... :D

 

[edit]--Message édité par BifaceMcLeOD--[/edit]

n°40252
youdontcar​e
Posté le 15-06-2001 à 22:13:16  profilanswer
 

tu peux aussi utiliser les templates pour faire des tests, et utiliser '<' sans avoir à taper '<'.
 
je vais recopier un exemple qui vient de je ne sais plus où ...
 
tu as une liste de bouquins que tu veux afficher dans une table, et tu veux une couleur différente pour la colonne du prix si le prix du livre est supérieur à 30.
 
sachant qu'un livre est décrit dans cet exemple par  
 
<book>
 <title>Le titre du livre</title>
 <price>son prix</price>
</book>
 
(bouquins sont rangés dans une bibliothèque genre
<library>
  <book ...
  <book ...
</library> )
 
dans ton xsl tu as :
 
<xsl:template match="/">
 <table>
   <xsl:apply-templates />
 </table>
</xsl:template>
 
<!-- template par défaut pour le tag "book" -->
<xsl:template match="book">
 <tr>
   <td><xsl:value-of select="title" /></td>
   <td><xsl:value-of select="price" /></td>
 </tr>
</xsl:template>
 
<!-- template qui override la template "book" si le prix du livre est supérieur à 30 -->
<xsl:template match="book[price > 30]">
 <tr>
   <td><xsl:value-of select="title" /></td>
   <td bgcolor="ff0000"><xsl:value-of select="price" /></td>
 </tr>
</xsl:template>
 
on peut faire une autre template genre "book[price > 50]" qui override les deux précédentes, et ainsi de suite ...
 
voilà. c'est très puissant et très sympa tout ça, un peu cryptique au début, mais on s'y fait vite !

n°40255
youdontcar​e
Posté le 15-06-2001 à 22:20:21  profilanswer
 

y'a plein de tutorials sur http://zvon.org/
 
xml, xsl, xpath.

n°40262
youdontcar​e
Posté le 15-06-2001 à 22:38:17  profilanswer
 

[off topic ...]
 
duch > dis moi, ta boîte n'est elle pas apparue dans un numéro de shift ? (shift.jp.org)

mood
Publicité
Posté le 15-06-2001 à 22:38:17  profilanswer
 

n°40515
nabab
I'm blogging this.
Posté le 18-06-2001 à 08:17:02  profilanswer
 

DUCH >  :lol:  
 
En XML il y a quoi 5 entités prédéfinis ... c pas dur à apprendre par coeur ... M'enfin ... Surtout qu'il est evident que pour des problemes de parsage < ne peut pas etre à l'interieur d'un attribut sauf bien sur dans le cas evoque par youdontcare qui est à l'interieur d'un XPATH car alors le parseur s'attend à ce charactere ] avant celui ci < ou celui ci > ... Mais c de toute maniere plus rigoureux d'utiliser < ou > ...


---------------
Ce qui vaut la peine d'être fait vaut la peine d'être bien fait
n°40534
Gonzoide
Les cochons... dans l'espâââce
Posté le 18-06-2001 à 09:21:48  profilanswer
 

J'ai du faire la meme chose : mettre la couleur de fond d'une cellule en fonction de la severite d'une erreur se trouvant a l'interieur ... ca donne ca :
 
 <TD WIDTH="80">
  <xsl:attribute name = "bgcolor">
      <xsl:choose>
        <xsl:when test="Sever[. $le$ 3]">#00ff00</xsl:when>
        <xsl:when test="Sever[. $le$ 6]">#ff8000</xsl:when>
        <xsl:otherwise>#ff0000</xsl:otherwise>
      </xsl:choose>
     </xsl:attribute>
 
  <xsl:value-of select="Sever"/>
 </TD>
 
C'est l'equivalent d'un switch en C/C++. Note que pour les comparaisons, j'utilise $le$, $ge$ ou $eq$

n°40565
prettysmil​e
Sourire est un devoir social
Posté le 18-06-2001 à 10:48:58  profilanswer
 

BifaceMcLeOD> merci pour l'info, mais c un peu compliqué je sais pas si je retiendrais


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [XSLT] comment faire if a<b avec ce language de merde ?

 

Sujets relatifs
l'insertion dans un fichier texte en asp merde!??probleme de redirection download (language html ou java)
[DirectX] C'est quoi ce doc de merde qui accompagne le SDK?[XSLT]
apprendre un languagewindows 2000 je suis dans la merde
Formulaire de merde avec AccessLanguage HTML
DEVOIR POUR DEMAIN!!!! HELP!!! (language C)[VB] un recordset qui merde....
Plus de sujets relatifs à : [XSLT] comment faire if a<b avec ce language de merde ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR