繁体   English   中英

在任何情况下,我都可以在不使用 getElementByClassName 或 querySelectorAll 的情况下在边缘浏览器中获取所有具有相同 ID 的元素

[英]In any case can i get all the elements with same ID in edge browser without using getElementByClassName or querySelectorAll

我试过用这个(我知道ID应该不一样,但在IE中不能不一样):

document.getElementById("myid")

但它只给我一个元素,但我需要计算元素的长度,即 176。不要问我为什么; 这是要求。

我必须让我的项目运行 IE 版本 5 到 11 和 Edge。

getElementById()方法getElementsByClassName()方法querySelectorAll文档可以看出:getElementById()方法支持IE5.5+,getElementsByClassName()方法支持IE9+,querySelectorAll()方法支持IE8+。

要在旧版 IE 浏览器中查找多个元素,可以使用getElementsByNamegetElementsByTagName方法来查找这些元素。

getElementsByName 和 getElementsByTagName 方法支持 IE5+。

请参考以下示例代码:

<div id="content">
    <input type="text" id="txtvalue" name="inputvalue" value="item 1" /><br />
    <input type="text" id="txtvalue" name="inputvalue" value="item 2" /><br />
    <input type="text" id="txtvalue" name="inputvalue" value="item 3" /><br />
    <input type="text" id="txtvalue" name="inputvalue" value="item 4" /><br />
    <input type="text" id="txtvalue" name="inputvalue" value="item 5" /><br />
</div>

<script> 
    var items = document.getElementsByName("inputvalue"); 
    console.log(items.length);  //output: 5
    var items2 = document.getElementById("content").getElementsByTagName("input"); 
    console.log(items2.length); //output: 5
</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM