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 :

Select simples/multiples : Bug IE?


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Inactif
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    77
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 77
    Par d�faut Select simples/multiples : Bug IE?
    Bonjour � tous,

    Je souhaite mettre en place deux fen�tres "Select", transf�rer des "options" de l'une � l'autre, puis submiter tout le contenu de la premi�re fen�tre pour l'envoyer au serveur.

    Pour une question d'ergonomie IHM, les deux champs Select sont en mode "multiple = false" afin de manipuler les �l�ments un � un.

    Pour submiter le contenu du Select dans son ensemble, je passe donc "multiple = true" au moment du submit pour autoriser la multiple s�lection, puis je s�lectionne l'ensemble des options � l'aide d'une boucle avant de submiter.

    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
    function PostSelect(formulaire)
    {
        var cible = formulaire.elements["tab[]"];
     
        // On compte le nombre d'item de la liste select
        var nbCol = cible.length;
        // on passe le Select en Multiple
        cible.multiple = 'true';
     
        // On lance une boucle pour selectionner tous les items
        for (var a = 0; a < nbCol; a++)
        {
            cible.options[a].selected = 'selected';
        }
        // On soumet le formulaire
       formulaire.submit();
    }
    Le code fonctionne parfaitement sous Firefox.

    Sous IE 6, il fonctionne.... presque. En effet, il se produit un ph�nom�ne qui ressemblerait � un bug d'IE : seule la derni�re option du Select est s�lectionn�e... et transmise

    L� o� �a devient �trange, c'est qu'en apportant la modification suivante (en gris�), tout fonctionne parfaitement!!!



    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
    function PostSelect(formulaire)
    {
        var cible = formulaire.elements["tab[]"];
    
        // On compte le nombre d'item de la liste select
        var nbCol = cible.length;
        // on passe le Select en Multiple
        cible.multiple = 'true';
      
        alert ("hello world");
    
        // On lance une boucle pour selectionner tous les items
        for (var a = 0; a < nbCol; a++)
        {
            cible.options[a].selected = 'selected';
        }
        // On soumet le formulaire
       formulaire.submit();
    }
    J'ai alors pens� que IE avait besoin d'un d�lai pour prendre en compte le changement d'�tat. J'ai donc ins�r� � la place du Alert une boucle for comptant de 1 � 100 ou 1000, sans r�sultat.

    Bref, je ne sais pas comment r�soudre ce probl�me.

    Merci d'avance � ceux qui pourront m'aider...

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Ao�t 2002
    Messages
    1 060
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2002
    Messages : 1 060
    Par d�faut
    Bonjour,

    IE r�clame <select name="tab[]" multiple="">

  3. #3
    Inactif
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    77
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 77
    Par d�faut
    Citation Envoy� par jeca
    Bonjour,

    IE r�clame <select name="tab[]" multiple="">
    Merci pour cette r�ponse!
    Malheureusement, si j'insert multiple="" dans la d�claration du Select, IE passe d�s l'initialisation en mode "s�lection multiple".

    Je cherches � initialiser le Select en "simple", puis � le passer en "multiple" au moment du submit.

    Je viens de tester une variante de cette proposition : multiple="false"
    Mais IE reste en mode multiple....

    Je ne suis pas une lumi�re en Javascript. Ai-je fais une erreur dans le code JS ou HTML?

    Voici la d�claration du Insert :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
        <select name="tab[]" size="25" id="theMenu" multiple="" >

Discussions similaires

  1. select � choix multiple
    Par tribaleur dans le forum Balisage (X)HTML et validation W3C
    R�ponses: 11
    Dernier message: 22/06/2006, 15h53
  2. selection simple mais r�sultat multiple dans combobox
    Par forzaxelah dans le forum Bases de donn�es
    R�ponses: 1
    Dernier message: 12/06/2006, 14h21
  3. D�s�lection d'un select HTML multiple ?
    Par elitost dans le forum G�n�ral JavaScript
    R�ponses: 2
    Dernier message: 21/07/2005, 15h10
  4. Supprimer une option d'un select � choix multiple
    Par Oluha dans le forum G�n�ral JavaScript
    R�ponses: 2
    Dernier message: 02/02/2005, 14h16
  5. Combinaison de deux selects simples
    Par devtrax dans le forum Langage SQL
    R�ponses: 5
    Dernier message: 09/09/2004, 14h09

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