This question already has answers here:
What do querySelectorAll and getElementsBy* methods return?
(9个答案)
四年前关闭。
我正在尝试使用一个非常简单的js脚本将一些javascript注入web页面:
var c = document.getElementsByClassName("main").innerHTML;
alert(c);

我想用class=“main”设置div中的文本(并且只设置文本)的警报。当前脚本正在弹出一个警告,说“未定义”。我做错了什么,类名肯定是正确的,我搜索了stackoverflow和其他源代码,尝试了.innerHTML和.textContent,但是似乎没有什么可以简单地返回文本变量。

最佳答案

问题是您返回的是set of nodes (HTMLCollection)。类为“main”(getElementsByClassName)的所有元素。例如,这将显示第一个元素的innerHTML

var c = document.getElementsByClassName("main")[0].innerHTML;
alert(c);

然而,一个更标准的方法是这样使用querySelector
var c = document.querySelector(".main").innerHTML;
alert(c);

关于javascript - 通过类名称获取div并以javascript返回,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29978022/

10-12 00:14
查看更多