2014-11-18 7 views
0

셀렌 웹 드라이버를 사용하여 드롭 다운 링크를 클릭하려고합니다. 예를 들어 검색 할 때 모두 select를 사용하여 보여 주므로 나에게 적합하지 않습니다.드롭 다운 링크를 클릭 할 수 없습니다

나는 다음은 SOLN이입니다

<div class="pull-right cpa_dropdown cpa_col"> 
<div class="dropdown"> 
<span class="dropdown_ul_text" data-toggle="dropdown" style="background-color: transparent;"> 
<span class="dd_txt ng-binding">CCC</span> 
<span class="arrrow_img"/> 
</span> 

을 다음이어야 하나 개의 값을 드롭 다운 버튼, 즉 "dd_txt 겨 결합"을 클릭하고 선택해야합니다 ..

public void <methodname>(int list) { 
     List<WebElement> li = wb.findElements(By.className("<Classname>")); 
     for (int i = 0; i < li.size(); i++) { 
      li.get(i).getText(); 
      if (i == 3) { 
       li.get(i).click(); 
       List<WebElement> li1 = wb.findElements(By.xpath(".//*[@id='<id>']/li")); 
       for (int j = 0; j < li1.size(); j++) { 
        String x = li1.get(j).getText(); 
        if (j == 1) { 
         li1.get(j).click(); 
         System.out.println(x); 
        } 

       } 
      } 
     } 
+1

입력하신 마크 업에는 선택 요소가 없습니다. 그러므로 webElement.click()을 사용해야합니다. –

+0

드롭 다운의 전체 코드를 추가 할 수 있습니까? – Sighil

+0

웹 사이트에 대한 링크를 게시 할 수 있습니까? 그렇지 않다면 devs에서 찾을 수 있습니까? 이 위젯에 어떤 프레임 워크를 사용하고 있습니까? – SiKing

답변

0

이 아니다 드롭 다운, 이것은 보이는 보이는 멋진 AJAX입니다 드롭 다운처럼. 이산 클릭을 사용해야합니다. 다음과 같이 시작하십시오. 그러나 필요한 방식으로 작동 시키려면 실험 (또는 사이트에 대한 링크 게시)이 필요합니다.

driver.findElement(By.className("dropdown")).click(); 
driver.findElement(By.className("dd_txt")).click(); 
+0

아직도이 구문을 사용하여 클릭 할 수 없습니다. – BugBaster

+0

이것은 Angularjs & Html로 개발되었습니다. – BugBaster

+0

글쎄, 우리는 손가락이 떨어질 때까지 추측 할 수 있습니다. 아니면 더 많은 코드와 오류를 게시 할 수 있습니다. https://stackoverflow.com/help/mcve – SiKing

관련 문제