找到包含文本的最近的表

时间:2016-01-16 02:56:34

标签: jquery

我有3个嵌套表,最里面的表包含 td 部分中的一些文本。

获取包含此文本的最内层表的方法是什么?

如果我运行的话:

$("td").filter(function(){ return $(this).text().match(/PNR No:/);}).closest('table')

它给了我3个表

1 个答案:

答案 0 :(得分:1)

  

它给了我3张桌子

它返回3个表,因为每个td元素可能包含该文本(因为它们是嵌套的)。

  

获取包含此文本的最内层表的方法是什么?

如果要选择最里面的td元素,一种解决方案是选择不包含表格元素的td元素(即最里面的td元素)通过组合:not() pseudo class:has() selector

$("td:not(:has(table))").filter(function() {
  return $(this).text().match(/PNR No:/);
}).closest('table');

jsFiddle Demo