getElementsByTagName の範囲を狭めることができないこの問題が発生しています。
これが私がしていることです
<!DOCTYPE html>
<html>
<head>
<script>
function getElements()
{
var t = document.getElementById("t");
var x = t.getElementsByTagName("table");
//var f = x.getElementsByTagName("td");
alert(x.length);
}
</script>
</head>
<body>
<div id="t">
<table class="x">
<td class="f">
</td>
</table>
</div>
<input type="button" onclick="getElements()" value="How many input elements?">
</body>
</html>
上記の作品は、1を返します。
ただし、これを変更すると。
var f = x.getElementsByTagName("td");
alert(f.length);
それはスクリプトを壊します。
2 つの TagNames を使用できない場合、どのように絞り込むことができますか?
更新:悪いことに、これを投稿した後、変数の後に[0]が必要であることに気付きました。
var t = document.getElementById("t");
var x = t.getElementsByTagName("table");
var f = x[0].getElementsByTagName("td");
var u = f[0].getElementsByTagName("div");
alert(f.length);
alert(u[0].className);