2016-08-04 4 views
1

bekommen Ich habe diesen HTML-Teil des Codes.Wie IDs und Klasse von Eingabeelement eines bestimmten div nach Klasse in Selen

<div class="tbody"> 
    <div class="tr"> 
     <div class="td"> 
      <input type="text" id="my_id_1"> 
     </div> 
    </div> 
    <div class="tr"> 
     <div class="td"> 
      <input type="text" id="my_id_2"> 
     </div> 
    </div> 
    <div class="tr"> 
     <div class="td"> 
      <input type="text" id="my_id_3"> 
     </div> 
    </div> 
    <div class="tr"> 
     <div class="td"> 
      <input type="text" id="my_id_4"> 
     </div> 
    </div> 
</div> 

In Selen muss ich alle IDs von input type="text" finden, die in der div mit dem class="tbody" enthalten sind.

+0

Programmiersprache? – Andersson

+0

'div.tbody Eingabe [Typ = Text]' als Selektor und dann die ID – fehrlich

+0

Ich benutze Java-Sprache, können Sie mir sagen, wie Sie Ihre Ideen mit Syntax verwenden. Vielen Dank. –

Antwort

1

Sie verwenden Java Angenommen, versuchen By.cssSelector() wie unten: -

List<WebElement> elements = driver.findElements(By.cssSelector("div.tbody input[type = 'text']")) 
for(WebElement el : elements) 
{ 
    String id = el.getAttribute("id"); 
    String class = el.getAttribute("class"); 
} 
+0

das hat für mich funktioniert ... danke –

+0

@ S.S.N Willkommen. Froh, Ihnen zu helfen ... :) –

1

In Java Sie unten Stück Code verwenden können.

List<WebElement> allInputs = driver.findElements(By.xpath(".//div[@class='tbody']//input[@type='text']")); 
for(WebElement eachid : allInputs) { 
    System.out.println(eachid.getAttribute("id")); 
} 

Ich hoffe, dies hilft.

+0

Dieser Code garantiert nicht, dass alle 'Eingänge' nur diejenigen unter dem' div' mit 'class =" tbody "sind, wie OP angefordert hat. – JeffC

Verwandte Themen