我在页面中有以下内容,var行显示长度= 1但是它到达.each语句它没有输入它。我肯定错过了什么。当表中只有一行时,我只有这个问题。有什么想法吗?
$('.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
});
答案 0 :(得分:2)
:gt() 采用基于0
的索引,此处您要求的所有内容都大于第一个元素。因此,当只有一行时,你在第一行之后没有任何其他的tr,所以语句$('#webgrid tr:gt(0)')
返回空集合。
答案 1 :(得分:1)
在#webgrid tr:gt(0)
中,您选择的每个tr
都有一个祖先#webgrid
并且在索引位置大于0(gt(0)
),在这种情况下,使用如果要遍历所有:gt()
,tr
伪选择器是无用的。由于gt(0)
表示“索引大于0的每个元素”并且您在位置0只有一个元素,因此您将完全忽略它。
希望这有帮助!