如果你想得到至少有 2 个 [td]s 包含一些信息的 [tr]s,你应该在 :lt 之前使用 :contains。
HTML
<table class="todos">
<tbody>
<tr>
<td>info1</td>
<td>info2</td>
<td>info3</td>
</tr>
<tr>
<td>info1</td>
<td>other</td>
<td>info3</td>
</tr>
<tr>
<td>info1</td>
<td>other</td>
<td>some other</td>
</tr>
</tbody>
</table>
JS:
var procurar = 'info';
$(".todos tr").css('display', 'none');
$(".todos tbody tr").each(function () {
if ($(this).find('td:contains("' + procurar + '"):lt(2)').length > 1) {
$(this).css('display', 'table-row');
}
});
结果:
info1 info2 info3
info1 other info3
http://jsfiddle.net/4Sj7t
否则,如果您想获得其第二个 [td] 包含一些信息的 [tr]s,您应该在 :contains 之前使用 :lt,如您的示例所示。
HTML
<table class="todos">
<tbody>
<tr>
<td>info1</td>
<td>info2</td>
<td>other</td>
</tr>
<tr>
<td>info1</td>
<td>other</td>
<td>info2</td>
</tr>
</tbody>
JS:
var procurar = 'info';
$(".todos tr").css('display', 'none');
$(".todos tbody tr").each(function () {
if ($(this).find('td:lt(2):contains("' + procurar + '")').length > 1) {
$(this).css('display', 'table-row');
}
});
结果:
info1 info2 other
http://jsfiddle.net/4Sj7t/1/