Pregunta

Estoy en medio de una .en cada iteración y quería llamar a la 2º o 3º hijo por cada uno..pero no puedo hacer que funcione.

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

Mi única opción que se me ocurre es algo terrible goofy como este:

 $(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'...
¿Fue útil?

Solución

Lo que usted necesita es contexto.Con el contexto, el selector de sólo buscar elementos que son los hijos del contexto (en este caso this).

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

jsFiddle Demo

Esta es básicamente la misma:

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

Si sólo se necesita el directo de los niños, no todos los descendientes, usted debe utilizar .children():

$(this).children(':nth-child(2)').attr('id');
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top