开发者问题收集

如何使用 Dom 获取 td 内的值

2011-06-30
9366
<html>
<head>
</head>
<body>
<div id="content_Data"></div>
<script type="text/javascript">
function auto()
{
alert("auto called");
document.getElementById('content_Data').innerHTML='<div><table><tr><td>10</td><td>20</td></tr></table></div>';
alert(document.getElementById('content_Data').innerHTML);
getelements();
}
function getelements(){


    var searchElement=document.getElementById('content_Data').getElementsByTagName("div");
    for( var i=0; i<searchElement.length; i++ )
    {
    var child_length=searchElement[i].childNodes.length; 

      for( j=0; j<child_length; j++ )
          {               
             alert(searchElement[i].childNodes[j].nodeValue);               
          }
     }

}
</script>
<script>auto();</script>  
</body>
</html>
3个回答

尝试查看 td 节点的 innerHTML。或者,如果您只想要文本,那么对于 IE 来说是 innerText,对于其他浏览器来说是 textContent。

alert(searchElement[i].childNodes[j].innerHTML)

此外, jQuery 将大大简化您的代码。

Alex Reitbort
2011-06-30

好吧,只需导航到那里即可。例如

document.getElementById('content_Data').firstChild.firstChild.firstChild

获取第一个表格单元格(值为 10)。

Wolfgang Kuehn
2011-06-30

您可以更改 getElementsByTagName("div") 以获取 td 元素:

var searchElement=document.getElementById('content_Data').getElementsByTagName("td");

并且,最好在第二个 for 上声明 j 变量 :D。这就是您需要更改的全部内容

Vithozor
2011-06-30