gpt4 book ai didi

javascript - 为什么返回 document.getElementsByClassName 有效而 getElementbyId 不在 Watir 中?

转载 作者:太空宇宙 更新时间:2023-11-03 17:32:51 27 4
gpt4 key购买 nike

我有这行代码:

puts @browser.execute_script('return document.getElementsByClassName("modal-content")[0]').html

它有效,它在我的页面源代码中显示 HTML 标记。但是当我使用这个在其他领域尝试时:

puts @browser.execute_script('return document.getElementById("street")[0]').innerHTML

还有这行代码:

puts @browser.execute_script('return document.getElementById("street")[0]').html

我收到一条错误消息:: NoMethodError: nil:NilClass 的未定义方法“innerHTML”为什么使用 Class 名称获取元素有效,而使用 Id 获取元素无效?

还有一个问题是,有没有可能我们可以获得页面源代码的行号?

最佳答案

document.getElementById("street")[0]

不返回 HTML 元素数组,它只返回一个元素。

所以不用[0]就可以使用了

puts @browser.execute_script('return document.getElementById("street").innerHTML')

关于javascript - 为什么返回 document.getElementsByClassName 有效而 getElementbyId 不在 Watir 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28625602/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com