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 :

Bascule automatique entre deux listes ?


Sujet :

JavaScript

  1. #1
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2002
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

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

    Informations forums :
    Inscription : Novembre 2002
    Messages : 62
    Points : 52
    Points
    52
    Par défaut Bascule automatique entre deux listes ?
    Bonjour,
    Sur une page web JSP, je dispose de deux listes.
    La liste1 (<select></select>) est remplie au chargement de la page.
    La liste2 (<select></select>) est remplie un peu plus tard avec des infos d'un ArrayList :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <%	ArrayList<Colonne> liste =(ArrayList<Colonne>)request.getAttribute("liste");
     
    	int totalCol = liste.size();
    %>
    	<select id="colonnes" name="colonnes" size="10">
    <%
    	for(int nbCol=0 ; nbCol<totalCol ; nbCol++ ){
    %>
    		<option value="<%= liste.get(nbCol).getId() %>"><%= liste.get(nbCol).getNom() %></option>
    <%
    	}
    %>		
    	</select>
    Au moment de la création de la liste2 (code ci-dessus), j'aimerais qu'à chaque ajout d'un élément dans liste2, qu'il y ait un appel d'une fonction javascript qui permettra de supprimer les éléments de liste1 présents dans la liste2.
    Je n'arrive pas à trouver de solution.
    Merci

  2. #2
    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 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    ben au moment de remplir la 2 fait un removechild sur la 1 en scnaant les optiosn pour trouver la bonne en testant son innerHTML ou sa value ...

  3. #3
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2002
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

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

    Informations forums :
    Inscription : Novembre 2002
    Messages : 62
    Points : 52
    Points
    52
    Par défaut
    Oui mais comment j'appelle ma fonction "removeChild" ?
    Le onChange sur le select de la liste2 ne marche pas.

  4. #4
    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 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    a quel moment le chargement de la seconde liste se fait il ?
    un bout de code js nous aiderait

    tu peux t'inspirer de ça : http://www.developpez.net/forums/d59...s-liees-entre/

  5. #5
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2002
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

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

    Informations forums :
    Inscription : Novembre 2002
    Messages : 62
    Points : 52
    Points
    52
    Par défaut
    Le chargement de la seconde liste se fait lorsque je clique sur un bouton radio. Voici le code js, si ça peut aider :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    function chargementListe2() {
    	var url = 'liste2.jsp';
    	var pars = 'liste:2';
    	var target = 'liste2';
    	var inesAjax = new Ajax.Updater(target, url, {method: 'get', parameters: pars});
    }
    Une fois que je clique sur mon bouton radio, je récupère des données que je stocke dans un ArrayList et ensuite, je charge ma liste2 (voir code post plus haut).

  6. #6
    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 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    docn il te suffit pour chaque option de la liste2 de parcourrir les options de la liste1 jusqu'a trouver une egalité de values et faire un removeChild ...

  7. #7
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2002
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

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

    Informations forums :
    Inscription : Novembre 2002
    Messages : 62
    Points : 52
    Points
    52
    Par défaut
    C'est tout à fait cela...
    Ou encore, à chaque fois que je créé une option de liste2, je la recherche dans liste1 pour la retirer.
    Sauf que je ne sais pas trop comment me débrouiller pour le faire automatique (sans action de l'utilisateur, mais directement à la création de chaque option de liste2)

  8. #8
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 681
    Points : 5 221
    Points
    5 221
    Par défaut
    ça revient à un transfert entre listes... donc pas besoin de remove;

  9. #9
    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 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    Oui JT je sais un simple appendChild deplace les options, masi en l'occurrence il crée déja les options dans la seconde liste, d'ou le removeChild dans la première

  10. #10
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Salut,
    Un post du même genre pour la transfert d'option d'un select
    http://www.developpez.net/forums/d73...xte-zone-vers/

  11. #11
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2002
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

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

    Informations forums :
    Inscription : Novembre 2002
    Messages : 62
    Points : 52
    Points
    52
    Par défaut
    Les solutions proposées sont des solutions qui fonctionnent sur action de l'utilisateur.
    J'aimerais pouvoir supprimer dans liste1 les éléments de liste2 sachant que ma liste1 est déjà créée et affichée, c'est-à-dire qu'au moment où j'implémente
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    for(int nbCol=0 ; nbCol<totalCol ; nbCol++ ){
    %>
    		<option value="<%= liste.get(nbCol).getId() %>"><%= liste.get(nbCol).getNom() %></option>
    <%
    	}
    j'aimerais vérifier si l'élément courant existe dans liste1 et si c'est le cas, le supprimer de liste1.
    Pour l'instant, la seule solution que j'ai, c'est de remplir les deux ArrayList en même temps (avant affichage) puis de les parcourir en supprimant les éléments de liste2 présents dans liste1. Ensuite, je n'ai plus qu'à afficher les éléments restant de liste1 (sans ceux présents dans liste2) et de liste2. C'est une autre possibilité! Celle pour laquelle j'ai ouvert ce post m'intéresse toujours...

  12. #12
    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 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    que ce soit déclenché par l'utilisateur ou automatiquement au chargement le script est exactement le même tout ce qui change c'est l'appel ...
    sur le onchange dans un cas, sur le onload du body dans l'autre !

Discussions similaires

  1. basculer une valeur entre deux listes
    Par carlostropico dans le forum IHM
    Réponses: 2
    Dernier message: 10/11/2008, 11h14
  2. Ligne entre deux listes
    Par dehorter olivier dans le forum Delphi
    Réponses: 3
    Dernier message: 02/02/2007, 16h46
  3. [VB6] Passage d'éléments entre deux listes
    Par Nesejet dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 01/08/2006, 11h41
  4. Différence entre deux listes
    Par Celelibi dans le forum Linux
    Réponses: 4
    Dernier message: 26/04/2006, 09h46
  5. [FLASH MX2004] Drag and drop entre deux List
    Par aldo-tlse dans le forum Flash
    Réponses: 15
    Dernier message: 24/09/2005, 01h10

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