使用Javascript / jQuery计算HTML表的列或行中的唯一单元格

时间:2012-01-09 09:43:47

标签: javascript jquery html-table unique cells

是否有一种简单的方法可以使用jQuery或纯Javascript计算HTML表中列(或行)中的唯一单元格?

示例:(只有一列的表)

melon
banana
melon
strawberry

计数器将为3。

2 个答案:

答案 0 :(得分:2)

试试这个:

var a = {}, l = 0;
$('table tr td:first-child').each(function(){
    if (!a[$(this).text()]) {
        l++;
        a[$(this).text()] = true;
    }
});

alert(l);

对于HTML:

<table>
    <tr><td>melon</td><td></td></tr>
    <tr><td>banana</td><td></td></tr>
    <tr><td>melon</td><td></td></tr>
    <tr><td>strawberry</td><td></td></tr>
</table>

这适用于第一列。如果您想计算第二列中的值,您可以使用选择器table tr td:first-child+td,第三列table tr td:first-child+td+td等等。

工作示例:http://jsfiddle.net/7K64j/1/

答案 1 :(得分:2)

试试这个:

var matches = [];
$('table td').each(function() {
  if(!$.inArray($(this).text(), matches)==-1) matches.push($(this).text());
});
alert(matches.length);