日期:2014-05-16  浏览次数:20389 次

js取相同ID

<div>
<div>
<ul id="a">
<li id="b0"></li>
</ul>
</div>
<div>
<ul id="a">
<li id="b1"></li>
</ul>
</div>
<div>
<ul id="a">
<li id="b2"></li>
</ul>
</div>
</div>


var ab = document.getElementById('a');
var abc=ab.length;
for(i=0;i<abc;i++){
var cu=document.getElementById('b'+i+'');
.....
}

这样怎么取不到相同ID="a"个数?

------解决方案--------------------
getElementsByTagName("ul")
用这个。
------解决方案--------------------
语法:
obj= document . getElementById ( sID ) 

说明
根据指定的 id 属性值得到对象。返回 id 属性值等于 sID 的第一个对象的引用。假如对应的为一组对象,则返回该组对象中的第一个。
如果无符合条件的对象,则返回 null 。

如果您需要查找文档中的一个特定的元素,最有效的方法是 getElementById()。在操作文档的一个特定的元素时,最好给该元素一个 id 属性,为它指定一个(在文档中)唯一的名称,然后就可以用该 ID 查找想要的元素。
------解决方案--------------------
一定要用id么,你可以用class=“uid”然后document.getElementsByClassName(“uid”)这样就可以获得length了
------解决方案--------------------
id值在文档中必须唯一,如果有多个以最后一个为准
------解决方案--------------------
按规范来,不遵守,后果也很难预料。