javascript - Selenium (C#),使用 JavaScript 查找元素失败

标签 javascript c# selenium

我正在尝试使用 JavaScript 查找 Web 元素。正在找到第一个元素。当我使用类似的代码查找另一个元素时,我得到 null ref。异常(exception)。当我在开发人员工具(F12)中输入代码时,正在找到元素。

这是我使用的代码:

IJavaScriptExecutor js = Driver as IJavaScriptExecutor;
IWebElement ChangeAccessRightsLink = (IWebElement)js.ExecuteScript("return document.getElementsByClassName('aaaaaaaaa')[1];");
ChangeAccessRightsLink.Click();
IJavaScriptExecutor jss = Driver as IJavaScriptExecutor; //AddNewAccessRightButton =null :(
IWebElement AddNewAccessRightButton = (IWebElement)jss.ExecuteScript("return document.getElementsByClassName('bbbbbbbbb')[0];");

最佳答案

你需要等待,直到你的 JS 还没有准备好。 尝试显式等待、流畅等待。

关于javascript - Selenium (C#),使用 JavaScript 查找元素失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46563429/

相关文章:

javascript - 使用 jspdf 创建带有 Div 边框的 Pdf

c# - ASP.NET5 MVC6 的模型绑定(bind)问题

internet-explorer-8 - Selenium + IE8 : force IE8 compatibility view

java - 将Keys发送到您无法检查的文本框(使用Java)

javascript - 需要在悬停或播放时显示 HTML5 视频控件

javascript - 确定元素是否在另一个元素后面

javascript - 单元测试 firebase 函数 : how to stub firebase-admin sdk

c# - .NET 的浏览器模拟器 API

c# - 正则表达式拆分有异常(exception)

python - 如何单击“查看更多”链接并通过 Selenium 和 Python 抓取内容