我可以使用"包含"来使用td文本来获取行,但是如果它具有td>中的文本则会失败。 span text ..这是我的方案
<table id="tblAllMessages">
<tr><td>100</td><td><span>hi</span></td></tr>
<tr><td>200</td><td><span>100</span></td></tr>
</table>
如果我使用
$('#tblAllMessages td:contains('100')').parent("tr")
它会给我两行..但是,我只需要第一行。它不应该在第二行检查100,因为它在一个td的范围内。
我还需要添加其他内容吗?
答案 0 :(得分:1)
试试这个:
(美化版)
$('#tblAllMessages td')
.filter(function ()
{
return $("<div/>").text($(this).html()).html()=='100'
})
.closest("tr").css('background-color','red')
http://jsbin.com/wizacahi/2/edit
我使用的技巧是不在其中找到任何html实体。 (但纯文字)
答案 1 :(得分:0)
尝试使用:first
,如下所示:
$('#tblAllMessages tr td:nth-child(6):contains("100"):not(:has(span)):first').closest('tr')
工作JSfiddle
有关:first
的更多信息,请参阅:First API Doc
答案 2 :(得分:0)
试试这个,这将有效
$(document).ready(function(){
var $pressTitle =$('#tblAllMessages').find('td:first');
var pressTitle=$pressTitle.next().text();
alert(pressTitle);
});
</script>