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

HTML Discussion :

Alignement dans une liste <select>


Sujet :

HTML

  1. #1
    Membre éclairé
    Homme Profil pro
    Retraité Ing Electronique
    Inscrit en
    Mars 2004
    Messages
    369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Retraité Ing Electronique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2004
    Messages : 369
    Par défaut Alignement dans une liste <select>
    Bonjour,

    Dans un formulaire j'utilise un champ de sélection dans une liste (<select ...>)

    Cette liste est constituée d'un nom à longueur variable précédé d'une abréviation courte et de longueur variable également.

    Je voudrais que dans la liste de sélection, apparaisse alignés verticalement abréviations et nom.

    Pour cela j'utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <select name="name" style="font-family:Fixedsys,courier" size="1">
    <option value=<? echo $abrev; ?><? echo str_pad($abrev,10,' ')." ".$nom; ?></option>
    ...
    </select>
    Malheureusement l'espace n'est pas répété

    Avez vous une solution pour moi ?

    Merci

  2. #2
    Membre émérite
    Avatar de Linaa
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    987
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 987
    Par défaut
    Bonsoir,

    Essaies de remplacer l'espace ' ' par '&nbsp;'
    Mais bon, je ne vois pas l'utilité de mettre des espaces dans la valeur si c'est pour traiter les données par la suite...

  3. #3
    Membre éclairé
    Homme Profil pro
    Retraité Ing Electronique
    Inscrit en
    Mars 2004
    Messages
    369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Retraité Ing Electronique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2004
    Messages : 369
    Par défaut
    Merci Linaa, mais ça j'ai déjà essayé, mais idem

  4. #4
    Membre Expert Avatar de Tober
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    824
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 824
    Par défaut
    Je pense que tu devrais mettre ton formatage entre les balises <option>ICI</option> et mettre en value la valeur que tu veux récupérer quand tu envoies le formulaire !

  5. #5
    Membre averti
    Inscrit en
    Février 2007
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 37
    Par défaut
    Salut,
    Je suis pas sûr mais essai ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <select name="name" style="font-family:Fixedsys,courier" size="1">
    <option value=<? echo '"'.$abrev'; ?><? echo str_pad($abrev,10,' ')."&nbsp;&nbsp;".$nom."\""; ?></option>
    ...
    </select>
    Dit nous ce que ca donne xD

  6. #6
    Membre éclairé
    Homme Profil pro
    Retraité Ing Electronique
    Inscrit en
    Mars 2004
    Messages
    369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Retraité Ing Electronique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2004
    Messages : 369
    Par défaut
    J'ai fait ça, sans l'apostrophe après $abrev, mais sans résultat
    Citation Envoyé par M@t2802
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <select name="name" style="font-family:Fixedsys,courier" size="1">
    <option value=<? echo '"'.$abrev; ?><? echo str_pad($abrev,10,' ')."&nbsp;&nbsp;".$nom."\""; ?></option>
    ...
    </select>
    Raté

    Ensuite j'ai fait
    Citation Envoyé par Tober
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <select name="name" size="1">
    <option style="font-family:Fixedsys,courier" value=<? echo $abrev; ?><? echo str_pad($abrev,10,' ').$nom; ?></option>
    ...
    </select>
    Sans plus de résultat

    Désolé, mais merci de vos réponses

    Quelqu'un a-t-il une autre idée ?

  7. #7
    Membre averti
    Inscrit en
    Février 2007
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 37
    Par défaut
    Ok ! XD Ca vallait le cout d'essayer ! LOL

    Bon corrigez moi si je me trompe mais normalement tu dois avoir
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <option value="TA VALEUR">Hum Donutssss</option>
    Or, si je lis ton 2eme essay tu as
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <option value=TA VALEUR>Hum Donutssss</option>
    Sauf si tu es des guillemets dans ta variable ?

    ensuite tu peux essayer de tout concatener au lieu de faire plusieurs ECHO ^^.
    et je pense que le mieux serai de tout mettre dans une variable juste avant un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <?php
    $valeur_final = $abrev . str_pad($abrev,10,' ') . $nom;
    ?>
    <option style="font-family:Fixedsys,courier" value=<? echo '"' . $valeur_final . '"'; ?></option>
    Sinon tu peux aussi faire ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php
    echo '<option style="font-family:Fixedsys,courier" value="' . $valeur_final . '"'></option>
    ?>

  8. #8
    Membre éclairé
    Homme Profil pro
    Retraité Ing Electronique
    Inscrit en
    Mars 2004
    Messages
    369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Retraité Ing Electronique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2004
    Messages : 369
    Par défaut
    Voila exactement ce que j'ai écrit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <?php
    $valeur_final = $abrev . str_pad($abrev,10,' ') . $nom;
    ?>
    <option style="font-family:Fixedsys,courier" value="VALEUR A TRNSMETTRE"><? echo '"' . $valeur_final . '"'; ?></option>
    Mais désolé car ne marche pas.

    Quand j'écris "str_pad($abrev,10,'.')" un point remplaçant l'espace, les noms sont bien alignés, mais quand je remet l'espace, le str_pad n'ajoute qu'un seul espace et plus d'alignement !

    Pour mon info, quelle est l'utilité des deux '"' ?

  9. #9
    Membre émérite
    Avatar de Linaa
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    987
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 987
    Par défaut
    Citation Envoyé par FAQ (X)HTML
    Les listes déroulantes ne peuvent contenir que du texte.
    Les espaces "en trop" (whitespace) sont donc supprimés.
    Le seul moyen que je vois est d'utiliser un autre caractère que l'espace.

  10. #10
    Membre éclairé
    Homme Profil pro
    Retraité Ing Electronique
    Inscrit en
    Mars 2004
    Messages
    369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Retraité Ing Electronique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2004
    Messages : 369
    Par défaut
    Donc demande irréaliste

    Merci Linaa

  11. #11
    Membre Expert Avatar de Tober
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    824
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 824
    Par défaut
    Citation Envoyé par Linaa
    FAQ (X)HTML a écrit :
    Les listes déroulantes ne peuvent contenir que du texte.
    Les espaces "en trop" (whitespace) sont donc supprimés.
    Le seul moyen que je vois est d'utiliser un autre caractère que l'espace.
    Je vois pas pourquoi tu dis que les espaces en trop sont supprimés car les listes déroulantes ne peuvent contenir que du texte !
    Un espace est considéré comme un caractère donc comme un texte !
    L'exemple suivant marche très bien sur IE6 et FF
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <select>
    <option>&nbsp;.</option>
    <option>&nbsp;&nbsp;..</option>
    <option>&nbsp;&nbsp;&nbsp;...</option>
    <option>&nbsp;&nbsp;&nbsp;&nbsp;....</option>
    </select>

  12. #12
    Membre chevronné Avatar de Strix
    Inscrit en
    Novembre 2006
    Messages
    632
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 632
    Par défaut
    Bonjour bonjour !

    Bon je pense que c'est plus une histoire de mauvaise écriture qu'autre chose.
    En faisant des test simple pas de soucis.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    	<option value="<? echo $abrev; ?><? echo str_pad($abrev,10,' ').$nom; ?>"><?php echo $abrev.'&nbsp;&nbsp;'.$nom ; ?></option></select>
    Faire bien attention aux " pour value.
    Là tu peux placer autant d'espaces (via &nbsp; ) que tu le souhaites entre <option> et </option>

    Le code n'est pas le même que le tien étant donné que je n'ai pas certaines valeurs mais si c'est correctement écrit, ça marche

  13. #13
    Membre éclairé
    Homme Profil pro
    Retraité Ing Electronique
    Inscrit en
    Mars 2004
    Messages
    369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Retraité Ing Electronique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2004
    Messages : 369
    Par défaut
    Bonjour Strix,

    J'avais bien vu les oublis de " donc même si les " sont bien placés çà ne marche pas.

    Je vais éssayer la proposition de Tober et vous répond demain

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

Discussions similaires

  1. [MySQL] Forcer selection dans une liste déroulante select
    Par snorky94 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 28/07/2012, 13h41
  2. inserer une image dans une liste deroulante (select)
    Par titan_33 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 16/02/2012, 18h08
  3. Réponses: 1
    Dernier message: 01/02/2012, 16h57
  4. [SQL] Doublon dans une liste de <select
    Par Interface dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 30/09/2007, 23h01
  5. Pb de mise en forme dans une liste de selection
    Par crashyear dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 07/09/2006, 11h58

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