如果其中一个td具有内容,如何将类添加到tr。这是我的代码。
HTML
<table>
<tr>
<td>Some content</td>
<td>Some content</td>
<td></td>
<td>Some content</td>
<td>Some content</td>
<td class="last"></td>
</tr>
<tr>
<td>Some content</td>
<td>Some content</td>
<td>Some content</td>
<td>Some content</td>
<td>Some content</td>
<td class="last">Some content</td>
</tr>
</table>
Jquery的
$('tr').each(function(){
if($('td.last').length > 0 {
$(this).addClass('someclass');
}
});
答案 0 :(得分:3)
您可以使用.filter()
,
$('tr').filter(function(){
return $('td.last', this).text().length > 0;
}).addClass("SomeClass");
你必须根据这个对象遍历tds
。
答案 1 :(得分:2)
结合使用 :has()
, :not()
和 :empty
psedudo类选择器。
$('tr:has(td.last:not(:empty))').addClass('someclass');
$('tr:has(td.last:not(:empty))').addClass('someclass');
.someclass {
color:red
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr>
<td>Some content</td>
<td>Some content</td>
<td></td>
<td>Some content</td>
<td>Some content</td>
<td class="last"></td>
</tr>
<tr>
<td>Some content</td>
<td>Some content</td>
<td>Some content</td>
<td>Some content</td>
<td>Some content</td>
<td class="last">Some content</td>
</tr>
</table>
答案 2 :(得分:1)
在 :not 和 :empty 以及 closest() 的单行中尝试此操作,< / p>
$('td.last:not(:empty)').closest('tr').addClass('someclass');
$('td.last:not(:empty)').closest('tr').addClass('someclass')
.someclass{color:red}
.someclass .last{color:blue}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr>
<td>Some content</td>
<td>Some content</td>
<td></td>
<td>Some content</td>
<td>Some content</td>
<td class="last"></td>
</tr>
<tr>
<td>Some content</td>
<td>Some content</td>
<td>Some content</td>
<td>Some content</td>
<td>Some content</td>
<td class="last">Some content</td>
</tr>
</table>
答案 3 :(得分:1)
更改您的代码
$('tr').each(function(){
if($('td.last').length > 0 {
$(this).addClass('someclass');
}
});
要
$('tr').each(function() {
if ($(this).find("td.last").text().length > 0) {
$(this).addClass('someclass');
}
});
您需要使用$(this).find("td.last").text()
代替$('td.last')