Is there a way to combine $(this) with :nth-child?

|▌冷眼眸甩不掉的悲伤 提交于 2019-12-18 01:32:29

问题


I'm in the middle of an .each iteration and wanted to call out the 2nd or 3rd child for the each..but cant make it work.

alert($(this + ' :nth-child(2)').attr('id'));

My only option that I can think of is something terrible goofy like this:

 $(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'...

回答1:


What you need is context. With context, the selector will only look for elements that are the children of the context (in this case this).

$(':nth-child(2)', this).attr('id');

jsFiddle Demo

This is basically the same as:

$(this).find(':nth-child(2)').attr('id');

If you only need the direct children, not every descendant, you should use .children():

$(this).children(':nth-child(2)').attr('id');


来源:https://stackoverflow.com/questions/5983471/is-there-a-way-to-combine-this-with-nth-child

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!