JQUERY Recuperer toutes les values d'une liste (select) [Résolu/Fermé]

Signaler
Messages postés
506
Date d'inscription
mercredi 24 novembre 2010
Statut
Membre
Dernière intervention
25 décembre 2014
-
Messages postés
506
Date d'inscription
mercredi 24 novembre 2010
Statut
Membre
Dernière intervention
25 décembre 2014
-
Bonjour,
J'ai une liste sous cette forme:


<select id="liste" align="top" name="liste" size="5">

<option value="<author>Thomas Nom</author>">Thomas Nom</option>
<option value="<author>Thomas Nom2</author>">Thomas Nom2</option>
</select>

Elle affiche donc
Thomas Nom
Thomas Nom2

Mais contient en value la chaine avec des balises <author> ( c'est pour l'exemple)
Je voudrais récupérer dans une variable la chaine suivante:
<author>Thomas Nom</author><author>Thomas Nom2</author>

mais quand je fait:

function synchroListeTextBox(){
var $listeAuteur=($("#liste")).val();
alert($listeAuteur);
}
Je n'ai que l'auteur selectionné dans la liste qui arive.
Auriez vous une idée pour looper dans tout les éléments de la liste et les ajouter un a un a une variable ?
Merci d'avance

3 réponses

Messages postés
2371
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
13 janvier 2021
437
Salut,

var values = '';
 
$('#liste option').each(function() { values += $(this).val(); });
 
console.log(values);
6
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 63550 internautes nous ont dit merci ce mois-ci

Messages postés
506
Date d'inscription
mercredi 24 novembre 2010
Statut
Membre
Dernière intervention
25 décembre 2014
127
Merci ça fonctionne !
Messages postés
8319
Date d'inscription
jeudi 22 mars 2007
Statut
Contributeur
Dernière intervention
18 juillet 2018
1 472
Salut,

essaie un truc du genre :

$('author').each(function(){
   // ton code
});
Messages postés
2371
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
13 janvier 2021
437
'author' n'est pas considéré comme une balise car cette dernière est dans l'attribut value de la balise option
Messages postés
8319
Date d'inscription
jeudi 22 mars 2007
Statut
Contributeur
Dernière intervention
18 juillet 2018
1 472
exact, j'avais lu en diagonales... dans ce cas un simple $('option') ou ce que tu proposes ira très bien ^^
Messages postés
506
Date d'inscription
mercredi 24 novembre 2010
Statut
Membre
Dernière intervention
25 décembre 2014
127
C'est bon j'ia trouvé tout seul:

function synchroListeTextBox(){
    var $nb=($("#liste")).length;
    for(var i=0;i<$nb;i++)
    {
        var $listeAuteur=$listeAuteur+($("#liste"))[i].value
    }
    alert($listeAuteur);


Merci quand même !
Messages postés
8319
Date d'inscription
jeudi 22 mars 2007
Statut
Contributeur
Dernière intervention
18 juillet 2018
1 472
Tu te compliques la vie ;) essaie d'utiliser la réponse de Pitet plutôt.

D'ailleurs, ton code ne va pas fonctionner étant donné que tu réinitialises la variable listeAuteur à chaque tour de ta boucle.
Les variables ne prennent pas de $ en js non plus.

Non, honnêtement, prends le code de Pitet ;)