0

jQueryまたはプレーンJavascriptを使用してHTMLテーブルの列(または行)の一意のセルをカウントする簡単な方法はありますか?

例:(列が1つしかないテーブル)

melon
banana
melon
strawberry

カウンターは3になります。

4

2 に答える 2

3

これを試して:

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>

これは最初の列で機能します。2番目の列の値をカウントする場合は、セレクターtable tr td:first-child+td、3番目table tr td:first-child+td+tdの列などを使用します。

実例: http: //jsfiddle.net/7K64j/1/

于 2012-01-09T09:54:24.133 に答える
2

これを試して:

var matches = [];
$('table td').each(function() {
  if(!$.inArray($(this).text(), matches)==-1) matches.push($(this).text());
});
alert(matches.length);
于 2012-01-09T09:56:32.630 に答える