Подсчет уникальных ячеек в столбце или строке таблицы HTML с помощью Javascript / jQuery - PullRequest
0 голосов
/ 09 января 2012

Существует ли простой способ подсчета уникальных ячеек в столбце (или строке) в таблице HTML с помощью jQuery или обычного Javascript?

Пример: (таблица только с одним столбцом)

melon
banana
melon
strawberry

Счетчик будет 3.

Ответы [ 2 ]

2 голосов
/ 09 января 2012

Попробуйте это:

var matches = [];
$('table td').each(function() {
  if(!$.inArray($(this).text(), matches)==-1) matches.push($(this).text());
});
alert(matches.length);
2 голосов
/ 09 января 2012

Попробуйте это:

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/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...