如何在表中获取所选<option>值的数组

时间:2015-12-23 18:00:29

标签: javascript jquery html

我有一个包含10列的表

enter image description here

我正在尝试遍历NAME行以从下拉列表中获取4个选定的名称。

我过去只需要一个,但不得不再增加3个。我通过这个代码获得了一个

 var $tds = $(this).find('td').filter(':visible')
                name = $tds.eq(0).children().val()

我无法解决这个问题......空白。

任何代码或帮助都将不胜感激。

节日快乐

2 个答案:

答案 0 :(得分:1)

您应该可以使用.map

var vals = $tds.eq(0).children('select').map(function() {
    return $(this).val();
}).get();

Fiddle

答案 1 :(得分:1)

您可以使用select遍历第一个td单元格中的每个$.each()。要转到正确的选择器,您可以使用:first代替eq(0)

var arr = [];
$('td:visible:first select').each(function()
{
  arr.push($(this).val());
});

示例:https://jsfiddle.net/DinoMyte/rv3wwpsf/1/

更新:要查找所有行中的所有选择值:

var arr = [];
$('tr').each(function()
{ 
   $(this).find('td:visible:first select').each(function(){
     arr.push($(this).val());
  });
});

alert(arr);

https://jsfiddle.net/DinoMyte/rv3wwpsf/2/