javascript - getElementsByClassName 返回 [] 而不是异步附加节点

标签 javascript ajax getelementsbyclassname

(在第一个问题制定得非常糟糕之后我又问了我的问题)

我面临以下问题:

<div class="testA" id="test1"></div>

上面写的元素是预定义的。我现在通过 XMLHttpRequest & Co. 加载一个 xml 树提供以下响应:

<response>
    <div class="colorSelector" id="0-0">
        <div class="gbSelector" id="1-0">
            <table style="none" id="2-0"></table>
        </div>
    </div>
</response>

我现在附加第一个 div使用

request.responseXML.getElementsByTagName("response")[0]
                       .getElementsByTagName("div")[0]

进入预定义的div

<div class="testA" id="test1">

最终文档如下所示(使用开发工具检查):

<div class="testA" id="test1">
    <div class="colorSelector" id="0-0">
        <div class="gbSelector" id="1-0">
            <table style="none" id="2-0"></table>
        </div>
    </div>
</div>

当我现在尝试获取元素 <div class="colorSelector" id="0-0"> 时使用 getElementById("0-0")我得到了预期的结果。

但使用 getElementsByClassName("colorSelector")返回 [] .

我错过了什么吗?这可能是节点类型为 Element 的事实的遗留问题吗?而不是 HTMLElement

最佳答案

colorSelector 被注释掉了。 JavaScript 仅在 DOM 中运行,被注释掉的部分不在 DOM 中。

关于javascript - getElementsByClassName 返回 [] 而不是异步附加节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7615162/

相关文章:

javascript - 使用数组索引在该数组的过滤版本中查找相应的索引

javascript - 如何隐藏基于复选框的值,包括选中时必需的值(包括下拉框版本)

php - MySQL 在执行 AJAX 调用时没有检索任何内容,jquery 也不再工作

PHP 中的 Javascript 蓝调 : getElementById & getElementsByClassName

html - jquery通过类名获取元素

javascript - 如何仅使用 javascript 更改按钮颜色 onclick?

javascript - Highcharts 根据类别值更改栏背景颜色

javascript - 在 ember 中绑定(bind)数据

javascript - 使用 Ajax 的地下气象 API

c# - Jquery Ajax 发布后局部 View 刷新