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

JavaScript Discussion :

Ajout Option à select et selected


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Transports

    Informations forums :
    Inscription : Février 2007
    Messages : 340
    Par défaut Ajout Option à select et selected
    Bonjour à tous !

    J'ai un script qui me permet d'ajouter des options à un "select".

    Je fais donc des :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    monselect[x] = new Option(texte,valeur,selection,selection);
    Lors de l'ajout des options, un seul va avoir selection à "true", tous les autres sont à "false". Donc logiquement, à la fin de l'ajout, cet option sera sélectionné.

    Jusque là, tout va bien.
    Je teste sur Firefox 3.0, Firefox 3.5, IE 7, IE 8, aucun problème.

    J'ouvre IE 6, et lui me sélectionne non pas le bon option mais directement celui qui le précède.

    Ai-je fais une erreur ? à quoi correspondent exactement les 2 derniers paramètres du Option ? Dois-je plutot faire la sélection après ?

    Merci de votre aide ;-)

  2. #2
    Expert éminent

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Par défaut
    Bonjour,

    Lu autre part, la liste des paramètres:

    1. text = texte affiché dans la liste
    2. value = valeur de la liste à transmettre (facultatif)
    3. defaultSelected = transmettre true quand l'élément doit être l'élément sélectionné par défaut, sinon false (facultatif)
    4. selected = transmettre true quand l'élément doit être sélectionné (facultatif)

    Opera 5.12 n'interprète pas les deux derniers paramètres, Netscape 6.1 n'interprète pas le dernier.

  3. #3
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par madevilts Voir le message
    à quoi correspondent exactement les 2 derniers paramètres du Option ?
    Normalement, le 1° correspond à defaultSelected et le 2° à selected ...

    A+

  4. #4
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Transports

    Informations forums :
    Inscription : Février 2007
    Messages : 340
    Par défaut
    Voilà, c'est bien ce que je pensais.

    En fait, je charge un tableau de pays dans le select. Pays qui sont triés dans l'ordre alphabétique.

    Le seul pays devant être sélectionné par défaut est "France" donc, pour être sur j'envoi "true" en param 3 et 4. Tous les autres pays étant à "false" en param 3 et 4.

    Sur tous les browsers ça marche sauf sous IE6 qui me sélectionne Finlande (option précédant France).

  5. #5
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par madevilts Voir le message
    Dois-je plutot faire la sélection après ?
    Oui, donc, pour IE6

    A+

  6. #6
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Transports

    Informations forums :
    Inscription : Février 2007
    Messages : 340
    Par défaut
    Ok... pas de solution en fait... de la bidouille alors

    Voici mon code définitif

    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
     
    /**
     * Ajout une option à un select
     * @param DOMElement select1 Select à remplir
     * @param String valeur Value de l'option
     * @param String texte Texte de l'option
     * @param Boolean selection Sélectionné ou non
     */
    function select_ajoutoption(select1,valeur,texte,selection)
    {
        var selopt = select1.options; //on récupère le tableau d'options
        var numopt = selopt.length; //on récupère le nombre d'option qui va être le numéro de la nouvelle option
        selopt[numopt] = new Option(texte,valeur,selection,selection); //On ajoute l'option
        if(numopt%2)
            selopt[numopt].style.backgroundColor='#e7e7e7'; //On colore une option sur 2 en gris clair
        if(selection && navigator.appVersion.search('MSIE 6.0')>=0) // compatibilité MSIE6
            select1.selectedIndex=numopt; // on sélectionne la bonne option sur ce browser de m****
    }

  7. #7
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par madevilts Voir le message
    Ok... pas de solution en fait... de la bidouille alors
    Si des utilisateurs accros à IE6 tu as
    Alors à la bidouille tu te résigneras


    A+

  8. #8
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Transports

    Informations forums :
    Inscription : Février 2007
    Messages : 340
    Par défaut
    Citation Envoyé par E.Bzz Voir le message
    Si des utilisateurs accros à IE6 tu as
    Alors à la bidouille tu te résigneras


    A+
    C'est une entreprise cliente donc je peux pas leur demander de passer à IE7 ou Firefox juste pour notre site

    Hier je me suis régalé à faire l'adaptation des superpositions de <select> et de div qui passait dessus

  9. #9
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Je me doutais bien que ce n'était pas par plaisir

    J'ai été longtemps dans le même cas ...

    A+

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

Discussions similaires

  1. select in (select in (select in etc.))
    Par Christophe P. dans le forum Langage SQL
    Réponses: 4
    Dernier message: 28/01/2015, 11h34
  2. Ajouter option dans un select de ma fenêtre parente
    Par keumlebarbare dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 03/12/2009, 14h12
  3. fonction ajouter option a une combobox (select)
    Par youyou2011 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 23/01/2008, 13h52
  4. Réponses: 6
    Dernier message: 20/11/2007, 11h14
  5. [AJAX] Liste avec si select "autre" ouvre un div pour ajouter option
    Par gandalf76fr dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 10/11/2006, 15h24

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