2015-07-24 1 views
0

Je suis très nouveau pour javascript et jquery. J'essaie de créer une liste déroulante à sélection multiple avec le bouton "Sélectionner tout". J'ai finalement trouvé ce joli plugin: http://wenzhixin.net.cn/p/multiple-select/docs/jquery multiselect liste déroulante valeurs sélectionnées

J'ai suivi les docs, et la liste déroulante est montrée sur la page. Mais j'ai du mal à obtenir les éléments sélectionnés.

Voici ce que je faisais (en javascript contrôleur de fichier):

$scope.testSelectValues = $('#ms').multipleSelect('getSelects', 'text')); 

et dans le fichier html:

<div class="form-group"> 
    <label>Month</label> 
    <select id="ms" multiple="multiple"> 
     <option value="1">January</option> 
     <option value="2">February</option> 
     <option value="3">March</option> 
     <option value="4">April</option> 
     <option value="5">May</option> 
     <option value="6">June</option> 
     <option value="7">July</option> 
     <option value="8">August</option> 
     <option value="9">September</option> 
     <option value="10">October</option> 
     <option value="11">November</option> 
     <option value="12">December</option> 
    </select> 
</div> 
<script> 
    $(function() { 
     $('#ms').change(function() { 
      console.log($(this).val()); 
     }).multipleSelect({ 
      width: '100%' 
     }); 
    }); 
</script> 

Cela ne fonctionne pas. Je ne reçois aucun testSelectValues ​​avec les valeurs sélectionnées appropriées. Quelqu'un sait quel est le problème?

+0

Pouvez-vous mettre le code dans fiddler? –

+0

Pouvez-vous poster un peu plus de code d'élément exact et d'initialisation bcos tout ce que vous avez essayé semble bon! –

Répondre

0

Ok votre question n'a pas beaucoup de sens mais je pense que je sais ce que vous essayez de faire.

Nommez votre menu de sélection name=whatever[] ajoutez les parenthèses après !! Cela mettra toutes les valeurs sélectionnées dans un tableau.

Pour obtenir les valeurs sélectionnées - var values = $('whatever[]').val(); For(i=0;i<values.length;i++) console.log(values[i])

Excusez-moi si cela ne va pas, je suis sur mon téléphone et je sais que c'est quelque chose de semblable à cela! Quand je serai sur mon ordinateur portable, je vérifierai pour vous!

+0

@ user2528576 quand je vais sur mon ordinateur portable, je vais vérifier pour vous !! – James111

+0

J'ai effectivement essayé, mais cela ne fonctionne pas. $ scope.values ​​n'est toujours pas défini. – user2528576

+0

Vous devez nommer votre menu de sélection. Nommez [] avec des parenthèses après! – James111