2016-07-20 3 views
-1

각도기 2를 사용하여 줄 바꿈이있는 div 요소에서 텍스트를 가져 오려고했습니다.divract 요소에서 텍스트를 가져올 수 없습니다. <br/>

내가

<tr class="abcde"> 
 
<td> 
 
<div class="abc">London</div> 
 
</td> 
 
</tr> 
 

 
<tr class="abcde"> 
 
<td> 
 
<div class="abc"> 
 
Washington DC 
 
<br/> 
 
</div> 
 
</td> 
 
</tr>

내가 두 번째 DIV하지만 두 번째 DIV에서 텍스트를 얻을 수 있어요 HTML 다음 한 빈 값을 반환합니다. 내가 유사한 코드를 사용하고

는 다음과 같습니다 :

element(by.xpath("//div[@class='abc']")).getText().then(function(text){ 
 
    ourChoice = text.trim(); 
 
});

어떤 사람이 내가 처음 사업부에서 텍스트를 얻을 수있는 방법을 제안시겠습니까?

+0

여기에 HTML 코드 이미지를 첨부하십시오. locator가 잘못된 것 같습니다. –

+0

'element.all (by.css ('div.abc')). first()' – Gunderson

답변

0

사업부 태그는 같은 클래스 이름 'ABC'를 가지고, 그래서 우리는 당신의 XPath를 사용하는 경우,이 두 가지 요소를 제공 할 것입니다. 이 경우 element(). all()을 사용하고 요구 사항에 따라 first() 또는 last() 메소드를 적용해야합니다. 그리고 each() 메서드를 반복적으로 적용 할 수 있습니다.

코드 조각은 :

element.all(by.xpath(".//div[@class='abc']")).first().getText(). 
      then(function(txt){ 
        console.log(txt); 
       }); 

이 마지막 요소의 텍스트

element.all(by.xpath(".//div[@class='abc']")).last().getText(). 
      then(function(txt){ 
         console.log(txt); 
      }); 

을 반복 얻을 첫 번째 요소의 텍스트를 얻을
element.all(by.xpath(".//div[@class='abc']")).each(function(ele,index){ 
         ele.getText().then(function(txt){ 
         console.log(txt); 
    }); 
}); 
+0

Suresh와 Gunderson에게 감사드립니다. 루핑을 시도하고 처음이자 마지막 요소 텍스트를 가져 왔습니다. 모든 경우에, 나는 첫 번째 div에 대한 공백 값을 얻는다 : ( – sam452

+0

당신은 여전히 ​​당신이 직면 한 문제를 의미합니까? –

+0

예 .. 두 번째 div 엘리먼트에서 '워싱턴 DC'텍스트를 얻지 못했습니다. 공백 값을 반환합니다. – sam452

관련 문제