使用
jquery,我想获取html表的指定列中的所有元素.请注意,它可以是多个列
例如,如果我有以下html表:
<table>
<tr>
<td>
a
</td>
<td>
b
</td>
<td>
c
</td>
</tr>
<tr>
<td>
1
</td>
<td>
2
</td>
<td>
3
</td>
</tr>
</table>
看起来如下:
1 2 3 a b c
我想得到1,3,a,c
我该怎么办?最有效的方法是什么? (我正在遍历由某个报告实用程序生成的巨大表)
解决方法
这里或多或少是通用示例,您可以将所需的索引定义为数组:
var cellIndexMapping = { 0: true,2: true };
var data = [];
$("#MyTable tr").each(function(rowIndex) {
$(this).find("td").each(function(cellIndex) {
if (cellIndexMapping[cellIndex])
data.push($(this).text());
});
});
$("#Console").html(data.join("<br />"));
测试用例:http://jsfiddle.net/yahavbr/FuDh2/
使用关联数组可以获得更快的性能,据我所知,搜索此类数组中的特定项目应该已经优化.
请注意,在JS中,第一个索引始终为0,因此第1个和第3个单元格表示索引0和2.