IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

XSL/XSLT/XPATH XML Discussion :

Utilisation de xsl:if


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    560
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 560
    Points : 148
    Points
    148
    Par défaut Utilisation de xsl:if
    Bonjour,

    Actuellement, j'ai la problématique suivante qui affiche une chaine sur un fichier PDF en utilisant XSL :
    <xsl:text >&#160;&#160;&#160;&#160;&#160;</xsl:text> <xsl:value-of select="@lignePrestLLigPrest" />

    Le problème de cette instruction : si "lignePrestLLigPrest" est plus grande que 22 alors j'ai l'affichage suivant
    sur ma page :
    espaceespaceespaceespaceespaceLibelle d'intervention
    long

    Or ce que je souhaite afficher est :
    espaceespaceespaceespaceespaceLibelle d'intervention
    espaceespaceespaceespaceespacelong

    Où espace désigne le caractère "espace".

    Je pense que je peux utiliser l'instruction "xsl:if" ?
    Soit s ma chaine à afficher.
    Tester la longeur de s.

    Si longueur < 22 alors afficher la chaine telle qu'elle.
    Si longueur > 22 alors decouper la chaine :
    * afficher sur une ligne sous_chaine(1,22)
    * afficher sur une deuxième ligne sous_chaine(23,longueur(chaine))

    Avez-vous des pistes pour résoudre cette problématique ?

    Merci d'avance.

  2. #2
    Membre éprouvé Avatar de alain.couthures
    Profil pro
    Gérant
    Inscrit en
    Avril 2007
    Messages
    902
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Gérant

    Informations forums :
    Inscription : Avril 2007
    Messages : 902
    Points : 1 247
    Points
    1 247
    Par défaut
    Considérant que le "else" n'existe pas en xsl et qu'il n'est pas possible de modifier une variable xsl, il vous faudra plutôt recourir à un xsl:choose.

    Si votre problématique vous impose de découper proprement la chaine de caractères sans couper un mot, le seul moyen sera d'écrire un template nommé récursif...

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    560
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 560
    Points : 148
    Points
    148
    Par défaut
    Bonjour,

    Merci pour votre retour.

    Comment puis-je écrire un template nommé récursif sans trop de changement.
    Puis-je utiliser mon fichier xsl de base ?

    Avez-vous des exemples sur la façon de procéder ?

    Merci par avance.

Discussions similaires

  1. [XSLT] Utilisation de xsl:key
    Par blupin dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 21/09/2007, 10h45
  2. Utilisation XML/XSL pour un site multi langues
    Par bigsister dans le forum Balisage (X)HTML et validation W3C
    Réponses: 10
    Dernier message: 22/01/2007, 16h36
  3. utiliser une XSL dans une JSP
    Par miloux32 dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 12/07/2006, 09h53
  4. Utiliser XML, XSL et CSS
    Par mister3957 dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 15/02/2006, 18h06
  5. utilisation de xsl:if et xsl:choose xsl: when
    Par moh_yougo dans le forum XSL/XSLT/XPATH
    Réponses: 6
    Dernier message: 30/01/2006, 15h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo