如何在选择框中获取所有选项值(选中/未选中)

我想通过点击按钮获取选择框中的所有选项值(选中/未选中)。 我怎样才能做到这一点?

var arr = new Array; $("#selectboxid option").each ( function() { arr.push ( $(this).val() ); }); alert ( arr.join(',' ) ); 

在按钮单击中

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

我认为这是一个使用Traversing / map方法的好机会:

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

如果你想获得两个包含所选和未选择值的独立数组,你可以这样做:

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

之后, values.selectedvalues.unselected数组将包含正确的元素。

好吧..

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

或者你的意思是

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