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

jQuery Discussion :

Tronquer le texte des OPTION


Sujet :

jQuery

  1. #1
    Membre éclairé
    Avatar de clavier12AZQSWX
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2009
    Messages
    1 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 391
    Points : 863
    Points
    863
    Par défaut Tronquer le texte des OPTION
    bonjour,

    dans une page, j'ai une liste déroulante qui affiche des codes acronymes et des libellés expliquant l'acronyme.
    je ne peux pas intervenir côté serveur pour enlever les codes.
    est-ce possible avec jquery ?

    par exemple mon html c'est ça :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <select  id="x_etu_visa_id" >			
    <option value="">Choisir...</option>
    <option value="3">CP, Libellé CP</option>
    <option value="6">dsp, blabla</option>
    <option value="4">FIN, Libellé FIN</option>
    <option value="1">NC, Non communiqué ou inconnu</option>
    <option value="5">OK, OK</option>
    <option value="2">R, Libellé R</option>
    <option value="7">xxy, libelléy</option>
    </select>

    pour chaque valeur libellé de la lsite, je veux enlever la partie code (donc ce qu'il y a avant la virgule).
    par exemple,
    <option value="4">FIN, Libellé FIN</option>.
    deviendrait
    <option value="4">Libellé FIN</option>.

    autre exemple :
    <option value="1">NC, Non communiqué ou inconnu</option>.
    deviendrait
    <option value="1">Non communiqué ou inconnu</option>.


    j'ai déjà essayé de sélectionner les options et juste changer la virgule par trois petits points pour tester,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $('#x_etu_visa_id select option:contains("Newest")').each(function(){
       var $this = $(this);
     
       $this.text($this.text().replace("...",","));    
    });​
    mais déjà là je cale et je n'ai aucune message d’erreur, voyez-vous mon erreur ? ça doit être une coquille je pense

    Merci de votre œil et aide précieuse.

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 658
    Points
    66 658
    Billets dans le blog
    1
    Par défaut
    to selecteur jquery n'est pas bon ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $(function(){
    $('#x_etu_visa_id option').each(function(){
       txt=$(this).html() 
     
       $(this).html(txt.replace(/^[^,]+,/,''));
     
       });
       })
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre éclairé
    Avatar de clavier12AZQSWX
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2009
    Messages
    1 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 391
    Points : 863
    Points
    863
    Par défaut
    merci pour l'aide.

    vous avez enlevé mon selecteur avec le contain qui marchait pas.
    du coup, le "Choisir..." arrive dans le traitement.

    j'ai du mal à lire et comprendre les regex, donc j'ai remplacé par :

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $(function(){
    	$('#x_etu_visa_id option').each(function(){
    	txt=$(this).html();
    	var tableau = txt.split(", "); // explode PHP ;-)
    	var nouveau = tableau[1];
     
    	if (nouveau!=undefined) $(this).html(nouveau);				
     
    		});
    });

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 658
    Points
    66 658
    Billets dans le blog
    1
    Par défaut
    Juste pour expliciter la regex:

    ^ = debut de chaine string

    [^,] :
    [] = classe de caractères (groupement)
    [^ ] le ^ induit la négation donc tous les caractères "qui ne sont pas"
    => [^,] tout caractère qui n'est pas une virgule

    + = au moins un

    [^,]+ => au moins un caractère qui n'est pas une virgule ou toute suite de caractères qui ne sont pas des virgules

    [^,]+, suite de caractères dont aucun n'est une virgule, suivie par une virgule

    Donc avec cette reg je matche depuis le début de la chaine une suite de caractères différents de la virgule suivi par une virgule.
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 17/07/2016, 10h01
  2. Modifier valeur du texte des options d'un select en fonction de la value
    Par tom1970 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 14/12/2014, 12h31
  3. [Look and feel] Texte des JLabels en gras
    Par aliasjcdenton dans le forum AWT/Swing
    Réponses: 11
    Dernier message: 26/01/2006, 11h49
  4. [Etat]afficher texte des groupes d'options
    Par 419 dans le forum IHM
    Réponses: 2
    Dernier message: 12/09/2005, 15h30
  5. Parametrage des options de projet
    Par ares7 dans le forum EDI
    Réponses: 7
    Dernier message: 22/07/2002, 15h33

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