c# - 如何点击没有 ID 或名称的链接?

标签 c# selenium selenium-webdriver click angularjs-ng-href

HTML代码:

<a ng-repeat="group in groups()" ng-href="phones/Apple/iPhone%203G%20or%203GS/" class="ng-scope" href="phones/Apple/iPhone%203G%20or%203GS/">
        <div class="card-box device-box">
            <span class="card-text ng-binding">iPhone 3G or 3GS</span>
            <i class="fa fa-chevron-right visible-xs"></i>
            <div class="clearfix"></div>
        </div>
    </a>

C#代码:

driver.FindElement(By.LinkText("IPHONE 3G 16GB")).Click();

最佳答案

我会在这里创建一个 XPath 表达式来找到 a 元素,该元素内部有一个 span 元素,其中包含 iPhone 3G 或 3GS 文本:

driver.FindElement(By.XPath("//a[div/span = 'iPhone 3G or 3GS']")).Click();

您也可以尝试使用 PartialLinkText 定位器来接近它:

driver.FindElement(By.PartialLinkText("IPHONE 3G 16GB")).Click();

关于c# - 如何点击没有 ID 或名称的链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32787951/

相关文章:

selenium.WebDriverException : unknown error: session deleted because of page crash from tab crashed

selenium - 如何在 Brave Web 浏览器上运行 Selenium 测试?

c# - 如何使用图像创建自定义工具提示?

c# - 使用协程访问 Unity 中的 SQLite 数据库

python - 如何使用 Selenium ChromeDriver 执行右键单击?

symfony2 是 selenium 登录

c# - 使用根中的数字对象反序列化 JSON

c# - C# 中的 getter 和 setter 有什么用?我如何将它们与数组一起使用?

python - 尝试按此一次性电子邮件网站上的复制按钮

python selenium phantomjsexecute_script