0

我在页面中有以下内容,var rows 显示 length=1 但随后它到达 .each 语句,它没有输入它。我肯定错过了什么。我只有在表中只有 1 行时才会遇到这个问题。有什么想法吗?

$('.addnewrow').click(function() {
        var rows = $('#webgrid tr:gt(0)');
        rows.each(function (index) {
           // do something 
        });

       // now do something else based on the results of the .each
    });
4

2 回答 2

2

:gt()采用0基于的索引,在这里您要求大于第一个元素的所有内容。因此,当只有一行时,您在第一个之后没有任何其他 tr,因此该语句$('#webgrid tr:gt(0)')返回空集合。

于 2013-10-15T18:15:34.347 回答
1

#webgrid tr:gt(0)中,您正在选择tr具有祖先#webgrid且位于索引位置大于 0 ( gt(0)) 的每个,在这种情况下,:gt()如果您想遍历所有tr. 由于gt(0)意味着“索引高于 0 的每个元素”并且您在位置 0 处只有一个元素,因此您完全错过了它。

希望这可以帮助!

于 2013-10-15T18:19:31.247 回答