小编典典

JavaScript无法通过ID查找元素?[重复]

javascript

<html>
    <head>
        <title>Test javascript</title>

        <script type="text/javascript">
            var e = document.getElementById("db_info");
            e.innerHTML='Found you';
        </script>
    </head>
    <body>
        <div id="content">
            <div id="tables">

            </div>        
            <div id="db_info">
            </div>
        </div>
    </body>
    </html>

如果我使用alert(e);它,它就会出现null..很明显,屏幕上没有任何“找到你”的信息。我究竟做错了什么?


阅读 282

收藏
2020-05-01

共1个答案

小编典典

问题是您试图在元素存在之前对其进行访问。您需要等待页面完全加载。一种可能的方法是使用onload处理程序:

window.onload = function () {
    var e = document.getElementById("db_info");
    e.innerHTML='Found you';
};

不过,大多数常见的JavaScript库都提供DOM就绪事件。这样比较好,因为window.onload也要等待所有图像。在大多数情况下,您不需要这样做。

另一种方法是将script标签放在您的</body>-tag 之前,因为它前面的所有内容都会在执行时加载。

2020-05-01