JQuery chaque boucle dans la rangée de table

Duplication possible:
Comment faire pour iterer des lignes de table avec JQuery et accéder à certaines valeurs de cellule?

J'ai quelque chose comme:

<table id="tblOne"> <tbody> <tr> <td> <table id="tblTwo"> <tbody> <tr> <td> Items </td> </tr> <tr> <td> Prod </td> </tr> </tbody> </table> </td> </tr> <tr> <td> Item 1 </td> </tr> <tr> <td> Item 2 </td> </tr> </tbody> </table> 

J'ai écrit jQuery pour faire bouger chaque tr comme:

 $('#tblOne tr').each(function() {...code...}); 

Mais le problème est que ça fait bouger le "tr" de "tblTwo" aussi que je ne veux pas. Quelqu'un peut-il suggérer quelque chose pour résoudre ce problème?

    JQuery vient d'utiliser

     $('#tblOne > tbody > tr').each(function() {...code...}); 

    En utilisant le sélecteur direct des enfants ( > ), vous traverserez les descendants immédiats (et pas tous les descendants)


    Dans VanillaJS, vous pouvez utiliser document.querySelectorAll() et marcher sur les lignes en utilisant forEach()

     [].forEach.call(document.querySelectorAll('#tblOne > tbody > tr'), function(tr) { /* console.log(tr); */ }); 

    Juste une recommandation:

    Je recommanderais l'utilisation de la mise en œuvre de la table DOM, c'est très simple et facile à utiliser, vous n'avez vraiment pas besoin de jQuery pour cette tâche.

     var table = document.getElementById('tblOne'); var rowLength = table.rows.length; for(var i=0; i<rowLength; i+=1){ var row = table.rows[i]; //your code goes here, looping over every row. //cells are accessed as easy var cellLength = row.cells.length; for(var y=0; y<cellLength; y+=1){ var cell = row.cells[y]; //do something with every cell here } } 

    Utiliser un sélecteur d'enfants immédiat > :

     $('#tblOne > tbody > tr') 

    Description: Sélectionne tous les éléments enfants directs spécifiés par "enfant" des éléments spécifiés par "parent".