我正处于一个.each迭代的中间,想要为每个人调出第二个或第三个孩子。但是不能让它工作。
alert($(this + ' :nth-child(2)').attr('id'));
我能想到的唯一选择是像这样可怕的傻瓜:
$(this).children(':first').next().attr('id', 'ddParam' + newCount);
$(this).children(':first').next().next().attr('id', 'txt' + newCount);
$(this).children(':first').next().next().next().attr('id'...
答案 0 :(得分:63)
您需要的是context。使用上下文,选择器将只查找作为上下文子元素的元素(在本例中为this
)。
$(':nth-child(2)', this).attr('id');
这基本上与:
相同$(this).find(':nth-child(2)').attr('id');
如果您只需要直接的孩子,而不是每个后代,您应该使用.children()
:
$(this).children(':nth-child(2)').attr('id');