2010-02-15 7 views
8

Je voudrais accéder à toutes les valeurs d'un champ de table tr id.Javascript - obtenir toutes les valeurs table -> tr> id

<table> 
<tr id="1"></tr> 
<tr id="2"></tr> 
<tr id="3"></tr> 
<tr id="4"></tr> 
<tr id="5"></tr> 
</table> 

Ce que je voudrais faire est, en utilisant une fonction javascript, obtenir un tableau et ont acess à

[1,2,3,4,5] 

Merci beaucoup!

Répondre

13
var idArr = []; 

var trs = document.getElementsByTagName("tr"); 

for(var i=0;i<trs.length;i++) 
{ 
    idArr.push(trs[i].id); 
} 
+5

Nice, mais juste avant la deuxième ligne je déposerais var '= document.getElementById ("tableid"), puis changer' la deuxième ligne à 'table.getElementsByTagName ("tr") ". +1 – karim79

+0

C'est un bon point s'il a besoin d'obtenir les lignes pour une table spécifique – zincorp

3

S'il vous plaît garder à l'esprit que HTML ids doivent commencer par un caractère alphanumérique afin de valider et getElementsByTagName retourne une collection, pas un tableau. Si ce que vous voulez vraiment est un tableau de toutes vos lignes de table, il n'est pas nécessaire d'attribuer un identifiant à chacune d'entre elles. Essayez quelque chose comme ceci:

<table id="myTable"> 
<tr><td>foo</td></tr> 
<tr><td>bar</td></tr> 
<tr><td>baz</td></tr> 
</table> 

var i, tr, temp; 

tr = []; 
temp = document.getElementById('myTable').getElementsByTagName('TR'); 
for (i in temp) { 
    if (temp[i].hasOwnProperty) { 
     tr.push(temp[i]); 
    } 
} 
Questions connexes