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 :

[XSLT][XPath] Générer un grandeur fixe pour un champs


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre expérimenté
    Avatar de virgul
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    1 625
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 625
    Points : 1 666
    Points
    1 666
    Par défaut [XSLT][XPath] Générer un grandeur fixe pour un champs
    Bonjour,

    Voila j'aimerais savoir comment vous vous y prendriez pour faire un template qui vous permette de renvoyer une nombre de caractère fixe par rapport a deux entrée la première mon text et la 2ème le nombres de caractères souhaité en retour. Si c'est pas assez long il faut rajouter des s en fonction du nombre restant!

    Mon template XSLT:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <xsl:template name="Textlength">
    <xsl:param name="Length"/> (20)
    <xsl:param name="Text"/> (toto)
    <xsl:variable name="LongText"><xsl:value-of select="string-length($Text)"/></xsl:variable>
    <xsl:variable name="Vide"><xsl:value-of select="number($Length) - number($LongText)"/></xsl:variable>
    <toto><xsl:value-of select="$Text">(ajouter le nombre de s correspondant a la valeur de $Vide)</toto>	
    </xsl:template>
    Résultat escompté:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <toto>totosssssssssssssssss</toto>
    Avez-vous une idée de comment je peux faire une boucle sur $Vide?

    Une solution serait d'avoir une variable avec 50 s dedans et de faire un substring avec la valeur $Vide mais ca ne ma plait pas beaucoup...

    Si vous auriez fait ca totalement différement ca peux aussi m'intéresser?

    Merci

    Thierry
    "Life is short don't forget to inhale"
    Mais: "Mieux vaux arriver en retard dans ce monde... qu'en avance à l'autre."

  2. #2
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Points : 10 927
    Points
    10 927
    Par défaut
    call-template recursif de type "compteur" c'est de loin le plus propre
    http://xml.developpez.com/faq/?page=3#xslt_compteur

  3. #3
    Membre expérimenté
    Avatar de virgul
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    1 625
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 625
    Points : 1 666
    Points
    1 666
    Par défaut
    Ah cette bonne vieille FAQ j'en avais oublié l'existence...

    Merci Erwy

    ++

    Thierry
    "Life is short don't forget to inhale"
    Mais: "Mieux vaux arriver en retard dans ce monde... qu'en avance à l'autre."

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 17/11/2008, 11h17
  2. [XSLT][XPATH] Nombre d'élèment ayant pour nom..
    Par SONY30 dans le forum XSL/XSLT/XPATH
    Réponses: 9
    Dernier message: 26/04/2007, 13h49
  3. [Tout langages] Comment Générer un ID alphanumérique pour les champs
    Par digital prophecy dans le forum Général Dotnet
    Réponses: 2
    Dernier message: 04/12/2006, 18h47
  4. Générer règles de conflits pour réplication
    Par dupin40 dans le forum Administration
    Réponses: 3
    Dernier message: 01/09/2003, 15h31

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