【发布时间】:2018-03-15 18:18:16
【问题描述】:
我正在尝试使用 JavaScript 查找 Web 元素。正在找到第一个元素。当我使用类似的代码查找另一个元素时,我得到 null ref。例外。当我将代码输入开发人员工具 (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];");
【问题讨论】:
-
分享 URL 或 HTML 以便于回答
-
当你像这样使用 JSE 时,你有点违背了使用 Selenium 的意义。为什么不直接用 Selenium 来获取元素呢?你在 JSE 中没有做任何你不能用 Selenium 做的事情。
-
我同意,@iamsanklap89。 C# 上的 Selenium 驱动程序根本无法使用 XPath 或 Class 找到它。因为我想快速修复它,所以我使用了 JavaScript。
标签: javascript c# selenium