当前位置: 首页 > 面试题库 >

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

陶修洁
2023-03-14
问题内容
<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..很明显,屏幕上没有任何“找到你”的信息。我究竟做错了什么?


问题答案:

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

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

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

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



 类似资料:
  • 问题内容: 以下定位技术之间有什么区别? 而且,从 性能角度来看 ,哪种方法是通过id定位元素的最快方法? 问题答案: 您的问题很难回答,肯定会给出一个结论性的答案。实际上,我很想将此问题标记为“太宽泛”,其他答案和评论也支持该问题。 以您的为例。纵观Selenium来源, 大多数 驱动程序只是获取您提供的ID,然后将其传递给有线协议: 如您所知,每个浏览器供应商都在单独的二进制文件中实现自己的有

  • 问题内容: 我使用上面的python代码来练习一些基本的Selenium操作。我找不到任何元素,无论是名称还是ID。不管我尝试什么,我总是会遇到相同的错误,这表明我要查找的元素不存在。(想法是按一下其中一个按钮…) 这是网站html代码的一部分: 这是所说的网站(链接断开) 任何帮助将不胜感激。 顺便说一句,这是我尝试运行的第一个使用Selenium的程序,是否有可能需要更改某些设置或需要安装其他

  • 请帮助我,我正在尝试选择一个图片,这是一个链接(一个网站上的培训师) 这是我的代码:

  • 问题内容: 以下是使用Java的WebDriver代码段: 执行代码后,出现以下异常: 线程“主”中的异常org.openqa.selenium.NoSuchElementException:无法找到元素:{“方法”:“ xpath”,“选择器”:” // html / body / div [2] / span / center / form / table / tbody / tr / td

  • 我想使用selenium单击一个按钮,并在站点的下拉日期选择器中选择该按钮。 我希望单击的按钮以黄色突出显示 http://covid.gov.pk/stats/ict 我正在使用以下xpath。 //*[@id=“datepicker-1361-7562-title”]/strong 这是我正在使用的代码 问题是,我可以点击下拉菜单上的其他元素,但不能点击这个按钮。 运行代码时遇到的错误。 ch

  • 我是DOM查询的新手,我想知道是否可以通过Xpath直接查询DOM元素,类似于下面提到的代码? 谢谢