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 :

Listebox multiple - et ajout


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de Alvaten
    Homme Profil pro
    Développeur Java / Grails
    Inscrit en
    Novembre 2006
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Java / Grails
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2006
    Messages : 324
    Par défaut Listebox multiple - et ajout
    Bonjour à tous,

    J'ai un petit script qui permet d'ajouter des valeurs à une listebox (merci la FAQ ). Le code marche très bien jusqu'au moment où je veut mettre ma liste en mode "multiple", à ce moment, je change le nom de ma liste ("maliste") en "maliste[]" pour permetre de recupérer les données apres un POST.

    Mon formulaire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <form>
       <select size="25" class="membres" name="maliste[]" multiple> <!-- si je met name="maliste" ça marche mais il m'est impossible de recupérer les donnés  -->
       </select> 
    <form>
    Mon code js:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <?php
    foreach($mesdata as $selectValue)
    {
    	$data = $ressources[$selectValue]->nom; //contient une string tiré d'une base de donnés
    	echo '<script>';
    	echo 'document.gestionmembres.membrepris.options['.$idx.'] = new Option(\''.$data .'\','.$idx.');';
    	echo '</script>';
    	$idx++;
    }
    ?>
    Auriez vous une idée de comment faire ?

    Merci d'avance.

  2. #2
    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
    Bonjour,
    avec name="maliste" le navigateur envoie les value sélectionnées sous forme de chaine de caractères séparée par des ","
    Tu pourras récupérer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    &maliste=val1,val2,val3 ...
    Aucun problème nécessitant un changement de nom, a priori ...

    A+

  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
    ... ceci dit, l'utilisation d'une syntaxe JS valide te permettra peut-être d'utiliser un name avec des [] :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.forms['gestionmembres'].elements['membrepris[]'].options['.$idx.'] = new Option(\''.$data .'\','.$idx.');';
    A+

  4. #4
    Membre éprouvé Avatar de Alvaten
    Homme Profil pro
    Développeur Java / Grails
    Inscrit en
    Novembre 2006
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Java / Grails
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2006
    Messages : 324
    Par défaut
    Merci pour cette réponse rapide,

    L'avantage de mettre maliste[] me permetait de récupérer directement un array. Je vais donc simplement "éclater" &maliste=val1,val2,val3 et mettre les valeurs dans un array manuelement.

    Edit: je vais regarder ta deuxième solutions qui est venu pendant la rédaction de ce post.

  5. #5
    Membre éprouvé Avatar de Alvaten
    Homme Profil pro
    Développeur Java / Grails
    Inscrit en
    Novembre 2006
    Messages
    324
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Java / Grails
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2006
    Messages : 324
    Par défaut
    Merci beaucoup.

    Ta deuxième solution marche bien. J'avais testé un truc qui ressemblait mais sans succès, j'avais du faire une erreur de code.

    @+

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

Discussions similaires

  1. affichage listebox multiple colonne à partir de plusieurs combobox
    Par oscar.cesar dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 02/04/2008, 09h51
  2. listebox multiple colonne
    Par oscar.cesar dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 28/03/2008, 13h47
  3. Upload multiple avec ajout dynamique des champs
    Par Invité dans le forum Général JavaScript
    Réponses: 15
    Dernier message: 25/02/2008, 14h09
  4. Réponses: 3
    Dernier message: 15/03/2006, 12h39

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