0

我目前有一个表,它是我数据库中结果的 while 循环。在我的表格行中,它包含一个值为 + 或 - 天数的值。我正在尝试创建一个 jQuery 脚本,它将找出 td 是否包含(“-”)或(“+”),并且我希望它将 css 样式应用于该行的第一个 td。目前它将它应用于所有行中的每个第一个 td。

        $("tr td:nth-child(7):contains('+')").each(function() {
    $('tr td:first-child').css('background-color', 'blue');
    });
4

2 回答 2

2

您需要使用$(this)以便在循环中引用“this”元素。

然后作为“this”是td元素,找到 parent tr,然后找到该first-child元素内的嵌套。

$("tr td:nth-child(7):contains('+')").each(function() {
    $(this).parent("tr").find('td:first-child').css('background-color', 'blue');
});

见演示:http: //jsfiddle.net/g7ZTf/

于 2012-08-06T10:02:15.723 回答
1

我会这样做...

$(function(){
    $("tr td:nth-child(7):contains('+')").each(function() {
        // get a jQuery object of the selected element using `$(this)`
        // then select `.siblings()`, and limit to first element in array (`.eq(0)`)
        $(this).siblings().eq(0).css('background-color', 'blue');
    });
});​

小提琴:http: //jsfiddle.net/FqUB3/

于 2012-08-06T10:07:47.903 回答