我正在尝试使用Selenium(C#)访问HTML元素,但我目前遇到了麻烦。该元素位于如下结构中:
<nav>
<ul class="menu"> id="menu">
<li id="ignore"> </li>
<li id="test_tab">
<a href="/.../..." title="Update">Update</a>
</li>
</ul>
</nav>
我需要访问并点击“更新”。访问此链接的最佳方法是什么?我试过.findElement(By.Id(“test_tab”))和类似的没有成功。一旦它被选中,我就打算打电话给.click()。
提前致谢。
答案 0 :(得分:1)
很简单!首先,您需要确定接收点击的元素。在这种情况下,<a>
将是。只需使用简单的css选择器。
driver.FindElement(By.CssSelector("ul#menu li#test_tab > a[title='Update']")).Click();
答案 1 :(得分:0)
您正在尝试选择li元素,因此无法单击该链接。选择“a”可能有多种选择。
1)
.findElement(By.LinkText("Update")).click()
2)
IWebElement update = driver.findElement(By.Id("test_tab"));
update = update.findElement(By.TagName("a"));
update.click();
3)您可以使用xpath直接选择“a”。