Jquery Obtenez la dernière rangée de table dans le dernier élément d'une série

J'ai une série de diapositives basées sur les sections:

<div id="slides"> <section id="first"> <section> <table> <thead> </thead> <tbody> <tr id="somethingUnique"> ... </tr> </tbody> </table> </section> <section> <table> <thead> </thead> <tbody> <tr id="somethingUnique"> ... </tr> </tbody> </table> </section> ... </section> </div> 

J'ai besoin de sélectionner récupérer l'ID de la dernière ligne du tableau dans la dernière section de la première première section.

J'utilise les Jquery suivants, je récupère "indéfini" … des idées?

  var lastListItem = $('#first:last-child table>tbody>tr:last').attr("id"); alert(lastListItem); 

 $('#first table:last tr:last') 

ou:

 $('#first tr:last') 

http://jsfiddle.net/hunter/QMzHH/

 var lastListItem = $('#first section:last table tr:last').attr("id"); 
 var lastListItem = $("#first").find("section").last().find("tr").last().attr("id"); 

Je préfère utiliser [0] .id au lieu de .attr ("id") puisque son appel de méthode un moins; Toutefois, si vous n'êtes pas convaincu que vous aurez toujours une table dans cette position DOM, Attr est plus sécurisé.

.trouver():

Obtenez les descendants de chaque élément dans l'ensemble actuel d'éléments appariés, filtrés par un sélecteur, un objet jQuery ou un élément.

 ​$("#first")​.find("tr:last").attr("id") 

Ou plus simplement dans ce cas:

 $("#first tr:last").attr("id") 

EXEMPLE

Les autres réponses fonctionnent, mais le problème avec votre tentative est le fait que :last-child doit être appliqué à l'élément enfant ( section ), et non au parent ( #first ° #first ). Les travaux suivants devraient fonctionner

 $('#first section:last-child table>tbody>tr:last').attr("id"); 

Et pourrait être simplifié pour

 $('#first section:last-child tr:last-child').attr("id"); 

http://jsfiddle.net/e7mUD/1