Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用jquery从具有嵌套表的表中选择顶级列_Jquery - Fatal编程技术网

使用jquery从具有嵌套表的表中选择顶级列

使用jquery从具有嵌套表的表中选择顶级列,jquery,Jquery,我有以下html结构(已生成,无法更改): 我遇到的问题是,当我得到子tds时,它太贪婪了,并且也从嵌套表中获取tds。有人知道我如何限制这一点,以便只从外部表的当前行获取tds吗?或者有更好的方法吗?您可能不必要地循环了两次。如果要修改不是嵌套表一部分的每个单元格,这应该可以 var cells = $("#tableID > tbody > tr > td"); $.each(cells, function(n, cell){ //do stuff

我有以下html结构(已生成,无法更改):


我遇到的问题是,当我得到子tds时,它太贪婪了,并且也从嵌套表中获取tds。有人知道我如何限制这一点,以便只从外部表的当前行获取tds吗?或者有更好的方法吗?

您可能不必要地循环了两次。如果要修改不是嵌套表一部分的每个单元格,这应该可以

var cells = $("#tableID > tbody > tr > td");
$.each(cells, function(n, cell){     
   //do stuff          
});

您可能不必要地循环了两次。如果要修改不是嵌套表一部分的每个单元格,这应该可以

var cells = $("#tableID > tbody > tr > td");
$.each(cells, function(n, cell){     
   //do stuff          
});

@机器-代码中有语法错误。“列”是未定义的。哦,是的,当我删除不必要的变量时,忘了删除那个部分。谢谢现在已修复我将此答案标记为正确,因为我希望引用外部单元格。@计算机-您的代码中有语法错误。“列”是未定义的。哦,是的,当我删除不必要的变量时,忘了删除那个部分。谢谢现在已修复我将此答案标记为正确,因为我希望引用外部单元格。
var cells = $("#tableID > tbody > tr > td");
$.each(cells, function(n, cell){     
   //do stuff          
});
var rows = $("#tableID > tbody > tr");
rows.each(function(n, row)
{
     $(row).children().each( // td implicit, since tr should only contain td
        function (i, column) {
           //do stuff
           // Note, if you don't need a reference to row inside the function,
           // you can loop directly over the tds by adding > td to the first
           // selector and skip the outer loop.
        });
     }
});