我想检查表中是否存在具有特定id的元素,下面是我的代码。
HTML:
<table id="age-table">
<tr>
<td id="age-header">Your age:</td>
<td>
<label>
<input type="radio" name="age" value="young"/> under 18
</label>
<label>
<input type="radio" name="age" value="mature"/> 18 to 50
</label>
<label>
<input type="radio" name="age" value="senior"/> after 60
</label>
</td>
</tr>
</table>
脚本:
<script>
var table = document.getElementById('age-table');
var lables = table.getElementsByTagName('label');
console.log(lables);
var findid = table.getElementById('age-header'); //throws error table.getElementById() is not a function.
</script>
我可以通过像这样使用contains()实现我想要的东西
var id = document.getElementById('age-header');
var findid = table.contains(id);
console.log(findid);
但我不明白为什么table.getElementsByTagName('label')
有效,但table.getElementById('age-header')
犯了错误。任何见解将不胜感激。
感谢。
答案 0 :(得分:2)
方法getElementById
仅适用于Document
对象。如果你考虑它,它是有道理的,因为ID应该在文档中是唯一的,而不是DOM元素。
查看this。
答案 1 :(得分:0)