JQuery儿童数量

时间:2011-01-20 21:15:18

标签: jquery count loops

我有一个中等简单的问题,我正在努力找出实现它的最佳方法。

对于那些想知道的人,这用于从不可编辑的页面中抓取数据(可以添加css,js,但其余内容是封闭源代码,不可用于编辑)

我正在遍历一个元素(例如tr),我只想查看存在一定数量的td元素的情况。

例如,对于每个tr,我只想考虑它有3个td个孩子的情况

最好的方法是什么?

1 个答案:

答案 0 :(得分:5)

您可以尝试这样的事情:

var result = $('tr').filter( function(){
  return $(this).children('td').length === 3;
});

然后你可以做任何你喜欢的刮痧。一个简单的例子:

result.each( function(i,e){ // for each row
  // e = one of the selected rows
  $(e).children('td').each( function(i,e){ // for each td in the row
    your_scraping_function( e.text() ); // etc.
  });
});

正如@patrick在下面指出的那样,如果对你的代码有意义,你当然可以将抓取过程直接链接到filter()的输出。

修改:在'td'中添加了children()选择器。腰带和吊带。

编辑:根据OP评论添加了如何遍历结果的示例。