Je suis au milieu d'une itération .each et je voulais appeler le 2ème ou le 3ème enfant pour chacun .. mais je ne peux pas le faire fonctionner.
alert($(this + ' :nth-child(2)').attr('id'));
Ma seule option à laquelle je peux penser est quelque chose de terrible comme ça:
$(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'...
Ce dont vous avez besoin est contexte . Avec le contexte, le sélecteur ne recherchera que les éléments qui sont les enfants du contexte (dans ce cas this
).
$(':nth-child(2)', this).attr('id');
C'est essentiellement la même chose que:
$(this).find(':nth-child(2)').attr('id');
Si vous n'avez besoin que des enfants directs, pas de tous les descendants, vous devez utiliser .children()
:
$(this).children(':nth-child(2)').attr('id');