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

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

document.getElementById("myid")

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

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


蝴蝶不菲
浏览 141回答 1
1回答

波斯汪

从getElementById()方法、getElementsByClassName()方法和querySelectorAll文档可以看出:getElementById()方法支持IE5.5+,getElementsByClassName()方法支持IE9+,querySelectorAll()方法支持IE8+。要在旧版 IE 浏览器中查找多个元素,可以使用getElementsByName或getElementsByTagName方法来查找这些元素。getElementsByName 和 getElementsByTagName 方法支持 IE5+。请参考以下示例代码:<div id="content">&nbsp; &nbsp; <input type="text" id="txtvalue" name="inputvalue" value="item 1" /><br />&nbsp; &nbsp; <input type="text" id="txtvalue" name="inputvalue" value="item 2" /><br />&nbsp; &nbsp; <input type="text" id="txtvalue" name="inputvalue" value="item 3" /><br />&nbsp; &nbsp; <input type="text" id="txtvalue" name="inputvalue" value="item 4" /><br />&nbsp; &nbsp; <input type="text" id="txtvalue" name="inputvalue" value="item 5" /><br /></div><script>&nbsp;&nbsp; &nbsp; var items = document.getElementsByName("inputvalue");&nbsp;&nbsp; &nbsp; console.log(items.length);&nbsp; //output: 5&nbsp; &nbsp; var items2 = document.getElementById("content").getElementsByTagName("input");&nbsp;&nbsp; &nbsp; console.log(items2.length); //output: 5</script>
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript