Выделите все ячейки в n-м столбце с помощью jQuery - PullRequest
4 голосов
/ 19 октября 2011

Как выбрать все ячейки в n-м столбце обычной HTML-таблицы.Я пробовал это, но это не работает:

    $('table#foo tbody td:nth-child(3)').each(function (index) {
        $(this).addClass('hover');
    });

ОБНОВЛЕНИЕ: Вот jsfiddle неработающего кода: http://jsfiddle.net/Claudius/D5KMq/

Ответы [ 3 ]

10 голосов
/ 19 октября 2011

Для этого не нужно использовать each.

$('table#foo tbody td:nth-child(3)').addClass('hover');

Кроме этого, в вашем коде нет ничего плохого.Проблема должна быть где-то еще.

6 голосов
/ 19 октября 2011

Ваша настоящая проблема (не очевидная в первоначальном вопросе, но в скрипте) состоит в том, что .index() возвращает значение, начинающееся с нуля, но :nth-child() требует основанное на одном значение .

0 голосов
/ 19 октября 2011
$('table#foo tbody td:nth-child(3)').addClass('hover');

Используйте этот сценарий (обратите внимание, что с: индексом выбора nth-child каждого дочернего элемента для сопоставления, начиная с 1)

$(".legendvalue", ".stmatst_legends").hover(function() {
    var index = $('.legendvalue').index($(this));

    $('table#stmstat tbody td:nth-child(' + (index + 1) + ')').addClass('hover');


}, function() {
    //remove hover
});
...