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 :

Effacer le contenu d'un listbox


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    132
    D�tails du profil
    Informations personnelles :
    �ge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 132
    Par d�faut Effacer le contenu d'un listbox
    Bonjour,

    j'ai un petit probl�me anodin mais persistant. Je vous tout simplement effacer en entier le contenu d'un listbox, avant de le repeupler. Voici la suite de mes �v�nement:

    *listBox= objet listbox
    1)Effacer l'ancien contenu du listbox
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    function delete()
    {
        var nbFoisTourne = listBox.options.length;
        for(var i=0; i<nbFoisTourne; i++)
        {
              listBox.options.remove(i);
        }
    }
    2) Remplir le listbox avec les nouvelles valeurs
    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 ajout()
    {
         for(var i=0; i<tabItemDeleted.length; i++)
         {  
               addOption(listBox, tabItemDeleted[i], tabItemDeleted[i]);                    
          }
    }
     
    function addOption(selectBox,text,value )
     {
     
            var docDel = document.createElement("OPTION");
            docDel.text = text;
            docDel.value = value;
            selectBox.options.add(docDel);
    }
    De ce fait, l'ordre des functions sont (delete, ajout (qui fait appel � la function addOption())).

    Cependant, lorsque je fais une trace dans la function delete, elle fait la boucle 2 fois :S....

    Bref, merci pour l'aide future
    Gabriel Desch�nes

  2. #2
    Membre confirm�
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    132
    D�tails du profil
    Informations personnelles :
    �ge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 132
    Par d�faut
    Je viens de trouver!
    Dans la boucle de la fonction delete(), il faut toujours enlever l'item � l'index 0 (remove(0)), car nous lors d'une suppression d'un item, la collection compl�te r�trograde son index de 1. Donc, l'item pr�alablement � l'index 2, apr�s remove(0), va se trouver � l'index 1 et ainsi de suite, jusqu'� ce qu'il se retrouve � l'index 0 pour ainsi se faire supprimer.

    Gabriel Desch�nes

  3. #3
    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 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    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 659
    Billets dans le blog
    1
    Par d�faut
    aller on le fait au pied de biche :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
     
    function delete()
    {
       listbox=document.getElementById('mylistbox');
      listBox.options.length=0;
        }
    Mais je confirme que la solution de boucler est plus propre.

    Il existe cependant une possibilit� en commen�ant par le debut:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
     
    function delete()
     listbox=document.getElementById('mylistbox');
    {while(listBox.options[0]){
     listbox.removeChild(listbox.options[0];
     }
        }
    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. effacer le contenu du ListBox WPF
    Par ziedzied dans le forum C#
    R�ponses: 5
    Dernier message: 12/02/2013, 00h40
  2. Effacer le contenu des champs edit et listbox
    Par slayer21 dans le forum Interfaces Graphiques
    R�ponses: 2
    Dernier message: 26/05/2009, 11h06
  3. comment effacer le contenu d'une table ttable
    Par naw dans le forum Bases de donn�es
    R�ponses: 4
    Dernier message: 07/07/2004, 16h13
  4. Comment effacer le contenu d'une scrollbox???
    Par Leclair2000 dans le forum C++Builder
    R�ponses: 2
    Dernier message: 01/07/2004, 16h34
  5. Effacer le contenu d'un fichier a partir d'une ligne
    Par localhost dans le forum Linux
    R�ponses: 3
    Dernier message: 04/04/2004, 04h47

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