[英]How to click a JS link with Selenium in C#
我是Selenium的新手,并试图用它来建立一个项目。 我需要学习如何单击JS链接。 页面列出了许多项目。 不幸的是,分页由JS完成。 这是一个例子......
<ul class="pagination museo-700">
<li class="first hidden disabled">
<a href="#">First</a>
</li>
<li class="prev disabled">
<a class="arrow" href="#">
<img src="/areas/site/Content/images/page/pagination-prev-arrow.png">
</a>
</li>
<li class="page active">
<a href="#" class="active">1</a>
</li>
<li class="page">
<a href="#">2</a>
</li>
<li class="page">
<a href="#">3</a>
</li>
<li class="page">
<a href="#">4</a>
</li>
<li class="page">
<a href="#">5</a>
</li>
<li class="next">
<a class="arrow" href="#">
<img src="/areas/site/Content/images/page/pagination-next-arrow.png">
</a>
</li>
<li class="last hidden">
<a href="#">Last</a>
</li>
</ul>
我想点击页面1.,2.,3.,4。 和5.上面的页面。 请给我一个线索
代码没有经过测试,但我觉得他们应该工作
.page > a:contains("1")
.page > a:contains("2")
.page > a:contains("3")
.page > a:contains("4")
.page > a:contains("5")
要么
//li[contains(@class, 'page')]/a[text()='1']
您可以先使用CSS选择器找到寻呼机,然后按链接文本找到每个链接:
driver.FindElement(By.CssSelector("ul.pagination"))
.FindElement(By.LinkText("1")).Click();
您还可以使用XPath:
driver.FindElement(By.XPath("//a[@href='#'][text()='1']")).Click();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.