使用 javascript 处理组合框



我有一些组合框,需要所选组合框的值。

我这样做:
但是不起作用。

var check_combo_box_values = $('#combos .combo').filter(function() { 
                return this.selectedIndex === 0;
                }).map(function () 
                {
                    return $('option:selected', this).map(function() {
                    return parseInt(this.value);
                    }).get();
                }).get();

另一方面,这是有效的:

var combo_box_values = $('#combos .combo').filter(function() {
                return this.selectedIndex === 0;
                }).map(function () 
                {
                    return $('option:not(:selected)', this).map(function() {
                    return parseInt(this.value);
                    }).get();
                }).get();

有第二个代码,并试图根据我的需求调整它,第一次尝试出现了。似乎不正确(:错误在哪里?

干杯

您正在使用此方法.filter()筛选第一个选择的结果$('#combos .combo')。因此,从过滤器中,您只会收到选择了第一个选项的组合框。如果您希望获取所有组合框的所有选定值,则需要删除过滤器反转过滤器,以防您不希望那些选择了第一个元素(这主要是默认元素)

如果您只是通常希望所有选定的选项,则可以使用以下内容:http://jsfiddle.net/nqTNH/