2009-12-04 3 views

Répondre

10
var arr = new Array; 

    $("#selectboxid option").each (function() { 
     arr.push ($(this).val()); 
    }); 

alert (arr.join(',')); 

le bouton cliquez sur

$("#btn1").click (function() { 
     var arr = new Array; 
     $("#selectboxid option").each (function() { 
      arr.push ($(this).val()); 
     }); 
     alert (arr); 
    }); 
3

err ok ..

$('#selectbox').click(function() { 
    var allvals = []; 
    $(this).find('option').each(function() { allvals.push($(this).val()); }; 
}); 

ou peut-être vous dire

$('#thebutton').click(function() { 
    var allvals = []; 
    $('#theselectbox').find('option').each(function() { allvals.push($(this).val()); }; 
}); 
13

Je pense est une bonne occasion d'utiliser le Traversing/map méthode:

var valuesArray = $("#selectId option").map(function(){ 
    return this.value; 
}).get(); 

Et si vous voulez obtenir deux tableaux séparés contenant les valeurs sélectionnées et non sélectionnées, vous pouvez faire quelque chose comme ceci:

var values = { 
    selected: [], 
    unselected:[] 
}; 

$("#selectId option").each(function(){ 
    values[this.selected ? 'selected' : 'unselected'].push(this.value); 
}); 

Après cela, les tableaux values.selected et values.unselected contiennent les bons éléments.

Questions connexes