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 :

Personnalisation de la flèche select form


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Webdesigner
    Inscrit en
    Août 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Webdesigner

    Informations forums :
    Inscription : Août 2011
    Messages : 8
    Par défaut Personnalisation de la flèche select form
    Bonjour,

    J'utilise un script pré construit qui me comble presque parfaitement. L'idée étant de personnaliser la flèche select d'un formulaire.

    A la base mon texte est gris clair, et j'aimerais qu'il devienne noir dés que la sélection est faite. Malheureusement, ce script cache le vrai champ select de formulaire et montre un span par dessus.

    Voici le script Javascript:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    <script type="text/javascript">
    $(document).ready(function(){	
     
        if (!$.browser.opera) {
     
            $('select.select').each(function(){
                var title = $(this).attr('title');
                if( $('option:selected', this).val() != ''  ) title = $('option:selected',this).text();
                $(this)
                    .css({'z-index':10,'opacity':0,'-khtml-appearance':'none'})
                    .after('<span class="select">' + title + '</span>')
                    .change(function(){
                        val = $('option:selected',this).text();
                        $(this).next().text(val);
                        })
    		});
     
     
     
        };
     
    });
     
    </script>
    Dans ma page j'écris quasiment de façon classique le champ de formulaire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <div style="position:relative; margin-bottom:10px">
      <select name="titre" id="titre"  class="select">
        <option value="0" <?php if($id_utilisateur == 0){ ?>selected="selected"<?php } ?>>Titre</option>
        <option value="1 ">Mr</option>
        <option value="2">Madame</option>
        <option value="3">Mademoiselle</option>
      </select>
      </div>
    Voici un apercu de ce que ca donne:

    Etape1:


    Etape2:


    Etape3:


    Comment puis-je changer la couleur Police de Mademoiselle en noir ?

    Merci

  2. #2
    Membre extrêmement actif
    Avatar de Golgotha
    Homme Profil pro
    Full-stack Web Developer
    Inscrit en
    Août 2007
    Messages
    1 387
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Full-stack Web Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2007
    Messages : 1 387
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    Sur le "onChange" de ton select, tu ne peux pas gérer la mise en forme ?

    (C'est possible d'avoir la totalité de la page HTML ?)
    Consultant et développeur full-stack spécialiste du Web
    faq jQuery - règles du forum - faqs web

  3. #3
    Membre éclairé Avatar de Hijack
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2011
    Messages : 30
    Par défaut En utilisant ".change()"
    Bonjour steeve,

    tu as dans ton code javascript à la ligne 12 la méthode :
    .change(function{...})
    C'est cette méthode qui va détecter le changement dans ton <select></select>. Tu peux donc appliquer une couleur différente au texte lorsque ce changement est détecté :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    .change(function(){
                        val = $('option:selected',this).text();
                        $(this).next().text(val);
                        $(this).next().css('color', 'black'); //Ajoute une couleur noir aux  textes.
                        })

  4. #4
    Membre habitué
    Homme Profil pro
    Webdesigner
    Inscrit en
    Août 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Webdesigner

    Informations forums :
    Inscription : Août 2011
    Messages : 8
    Par défaut
    Wahou ! Rapide et efficace !

    Merci Hijack, ça marche parfaitement !

    Merci aussi Golgotha

    La page est ici:
    http://cluster003.ovh.net/~kitaentr/...p?page=contact

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

Discussions similaires

  1. smooth scroll & menu <select> (form)
    Par ethos2.0 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 25/10/2009, 18h59
  2. personnaliser message d'erreur infopath forms services
    Par ahmedmido dans le forum InfoPath
    Réponses: 2
    Dernier message: 03/06/2008, 12h47
  3. form.select() / form.collection_select()
    Par barnoufal dans le forum Ruby on Rails
    Réponses: 2
    Dernier message: 20/02/2008, 14h57
  4. [Forms]personnalisation de couleur d'une form
    Par poula dans le forum Oracle
    Réponses: 5
    Dernier message: 13/01/2007, 20h07
  5. Personnalisation d'un champ select : modifier la fleche
    Par teshub dans le forum Balisage (X)HTML et validation W3C
    Réponses: 12
    Dernier message: 05/09/2005, 15h57

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