如果最后一个td(8)有一些内容,我怎样才能将类添加到第二行?

时间:2016-08-26 06:51:21

标签: javascript jquery

如果最后一个td(8)有一些内容,如何将类添加到第二行?

Html

<table>
    <tr>
        <td>1</td>
        <td>2</td>
        <td>3</td>
        <td>4</td>
        <td>5</td>
        <td>6</td>
        <td>7</td>
        <td>8</td>
    </tr>
    <tr>
        <td>1</td>
        <td>2</td>
        <td>3</td>
        <td>4</td>
        <td>5</td>
        <td>6</td>
        <td>7</td>
        <td></td>
    </tr>
</table>

Jquery的

$('td:nth-child(8):not(:empty)').closest('tr').addClass('part');

CSS

table
{border:1px solid #333;}

td
{border:1px solid #333;}

.part
{background-color:red;}

FIDDLE

https://jsfiddle.net/jpLq21jv/

4 个答案:

答案 0 :(得分:1)

.find():nth-child选择器一起使用:

$('td:nth-child(8):not(:empty)').closest('tr').find('td:nth-child(2)').addClass('part');

<强> Working Demo

答案 1 :(得分:1)

您必须在此背景下使用https://github.com/heroku/heroku-buildpack-nodejs/blob/master/lib/dependencies.sh#L21

$('td:nth-child(8):not(:empty)').siblings('td:nth-child(2)').addClass('part');

.siblings(selector)

答案 2 :(得分:1)

试试这个脚本

$(document).ready(function() {
    $('tr').each(function() {
        if($(this).find('td:nth-child(8)').text().length > 0) {
            $(this).find('td:nth-child(2)').addClass("part");
        }
    });
});

答案 3 :(得分:1)

你可以尝试一下

$('td:nth-child(8):not(:empty)').siblings('td:nth-child(2)').addClass('part');

css的变化

part

替换为

.part
相关问题