jQuery';元素的第一个子元素的s:first和:last

jQuery';元素的第一个子元素的s:first和:last,jquery,Jquery,我有一些简单的表(多个,都带有class=“parent”)和多个行。这些行中的单元格有自己的表。我试图针对第一个(父)表的行,如下所示: HTML: :first工作正常,因为这始终是父级的。但是当我尝试选择:last时,它将匹配嵌套表的last,而不是父表的last。如何告诉jQuery只查看父表中的,而不进一步搜索可能的子表?而不是。find()(查找所有子表)尝试。children(),只查找直接子表: $(this).children('tr:first').dostuff(); 我

我有一些简单的表(多个,都带有class=“parent”)和多个
行。这些行中的
单元格有自己的表。我试图针对第一个(父)表的
行,如下所示:

HTML:

:first
工作正常,因为这始终是父级的
。但是当我尝试选择
:last
时,它将匹配嵌套表的last
,而不是父表的last
。如何告诉jQuery只查看父表中的
,而不进一步搜索可能的子表?

而不是
。find()
(查找所有子表)尝试
。children()
,只查找直接子表:

$(this).children('tr:first').dostuff();

我建议稍微修改您的选择器,以确保它在将
附加到表的浏览器(如Firefox和Chrome)上工作:

$('table.parent').each(function() { 
  $(this).find('tr:first').dostuff(); 
  $(this).find('tr:last').dostuff(); 
});
$(this).children('tr:first').dostuff();
//tested
$('table.parent > tbody').each(function() {
   $(this).children('tr:first').text('hello').css('background-color', 'red');
   $(this).children('tr:last').text('hello').css('background-color', 'red');
});