2016-10-12 18 views
3

Seleniumを初めて使いこなしてプロジェクトを構築しようとしています。私はJSリンクをクリックする方法を学ぶ必要があります。ページには多くの項目がリストされています。残念ながらJSによってページネーションが行われます。ここに例があります...CでSeleniumを使用して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.ページ。私

答えて

2

を動作するはずのように私は感じて下さいテキスト:

driver.FindElement(By.CssSelector("ul.pagination")) 
     .FindElement(By.LinkText("1")).Click(); 

また、XPathを使用することができます

driver.FindElement(By.XPath("//a[@href='#'][text()='1']")).Click(); 
2

コードがテストされていないの手掛かりを与えるが、彼らはあなたが最初にCSSセレクタとリンクすることにより、各リンクにページャを見つけることができ

.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'] 
関連する問題