javascript - 无法从 TreeView 中获取展开按钮以使用 selenium 和 c#

标签 javascript c# css selenium

我在网站上有这部分代码:

<td id="tvMain_item_20_expcol" align="center">
  <img src="Images/Tree/tplus.gif" style="display:block;"onclick="ComponentArt_CancelEvent(event);tvMain.ToggleExpand(20,2)" alt="">
  <img src="Images/Tree/tminus.gif" style="display:none;" onclick="ComponentArt_CancelEvent(event);tvMain.ToggleExpand(20,2)" alt="">

C#

IWebElement expand=driver.FindElement(By.XPath("id('tvMain_item_22_expcol')/x:img[1]"));
expand.Click();

我也试过

//img[@onclick='ComponentArt_CancelEvent(event);tvMain.ToggleExpand(22,2)']

我已经尝试了所有类型的 xpath,但它不工作。 这是树的一部分,根据我在 xml 文件中定义的内容,他应该找到我正在寻找的主要元素,即元素 22.. 所有这些都工作正常,但是当点击 + 展开时他不能。 我怎样才能用 C# 获得 Selenium

最佳答案

使用以下 xpath。您提供的第一个 xpath 看起来无效,第二个可能会返回 2 个结果并导致失败

//td[@id='tvMain_item_20_expcol']/img[@src='Images/Tree/tplus.gif']

关于javascript - 无法从 TreeView 中获取展开按钮以使用 selenium 和 c#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35295725/

相关文章:

javascript - 使用 JavaScript 检查重复数据

javascript - MVC - 将整个模型作为参数传递给 javascript 中的 Url.Action

javascript - 检查元素是否包含 JavaScript 中的类?

c# - 即使在与服务器进行连续事件后,Owin token 也会过期

c# - 使用带有标志枚举的 ProtoBuf-Net 时出错

CSS 在 JSF 2.0 元素中不起作用

javascript - 如果在异步函数中调用 "expect",Jest 异步测试会超时。有时工作。 "Async callback was not invoked within timeout specified"

c# - 单击按钮时更改母版页的背景图像 url

html - 将div格式化成表格

Javascript 所见即所得逻辑