2010-02-15 69 views
8

我想访问表格tr标识字段的所有值。Javascript - 获取所有表格 - > tr>标识值

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

我想什么做的是,使用JavaScript函数,得到一个数组,并有接取

[1,2,3,4,5] 

非常感谢您!

回答

13
var idArr = []; 

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

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

不错,但第二行权之前,我会VAR'表=的document.getElementById( “TABLEID”);'然后更改第二行'table.getElementsByTagName( “TR”) ;'。 +1 – karim79 2010-02-15 20:16:30

+0

如果他需要获取特定表格的行,这是一个很好的观点 – zincorp 2010-02-15 20:16:58

3

请记住,HTML id必须为了验证以字母数字字符开始,getElementsByTagName返回一个集合,而不是一个数组。如果你真正想要的是所有表行的数组,则不需要为每个行分配一个ID。尝试是这样的:

<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]); 
    } 
}