2017-08-12 26 views
0

我试图从具有相似值的下拉列表中选择一个值。当我试图找到xpath时,我看到两个值。下面是我的html代码看起来怎么样:无法从两个不同的选项卡中的下拉列表中选择相同的值

<html id="ext-gen944" class=" x-viewport"> 
<head> 
<body id="ext-gen95" class="ext-gecko ext-gecko3 x-win x-border-layout-ct"> 
<div id="ext-gen1873" class="x-combo-list-inner" style="width: 178px; height: 69px;"> 
<div class="x-combo-list-item x-combo-selected">General</div> 
<div class="x-combo-list-item">Instrumental</div> 
<div class="x-combo-list-item">Microbial</div> 
</div> 
</div> 
<div id="ext-gen1874" class="x-layer x-combo-list " style="position: absolute; z-index: 9010; visibility: hidden; left: -10000px; top: -10000px; width: 73px; height: 161px; font-size: 12px;"> 
<div id="ext-gen1877" style="position: absolute; left: -1000px; top: -1000px; visibility: hidden; font-size: 11px; font-style: normal; font-weight: 400; font-family: tahoma,arial,helvetica,sans-serif; line-height: 15px; text-transform: none; letter-spacing: normal; width: auto;"></div> 
<div id="ext-comp-2182" class="x-window blue-window-active x-window-plain x-window-dlg" style="position: absolute; z-index: 9013; visibility: hidden; left: -10000px; top: -10000px; width: 354px; display: block;"> 
<div id="ext-gen2226" class="x-dd-drag-proxy x-dd-drop-nodrop x-grid3-col-dd" style="position: absolute; z-index: 15000; visibility: hidden; left: -10000px; top: -10000px;"> 
<div id="ext-gen2228" class="col-move-top"> </div> 
<div id="ext-gen2229" class="col-move-bottom"> </div> 
<div id="ext-gen2230" class="x-dd-drag-proxy x-dd-drop-nodrop" style="position: absolute; z-index: 15000; visibility: hidden; left: -10000px; top: -10000px;"> 
<div id="ext-gen2251" class="x-dd-drag-proxy x-dd-drop-nodrop x-grid3-col-dd" style="position: absolute; z-index: 15000; visibility: hidden; left: -10000px; top: -10000px;"> 
<div id="ext-gen2253" class="col-move-top"> </div> 
<div id="ext-gen2254" class="col-move-bottom"> </div> 
<div id="ext-gen2275" class="x-dd-drag-proxy x-dd-drop-nodrop x-grid3-col-dd" style="position: absolute; z-index: 15000; visibility: hidden; left: -10000px; top: -10000px;"> 
<div id="ext-gen2277" class="col-move-top"> </div> 
<div id="ext-gen2278" class="col-move-bottom"> </div> 
<div id="ext-gen906" class="x-shadow" style="z-index: 9009; left: 518px; top: 237px; width: 188px; height: 71px; display: block;"> 
<div id="ext-gen2286" class="x-layer x-combo-list " style="position: absolute; z-index: 9010; visibility: visible; left: 522px; top: 234px; width: 178px; height: 69px; font-size: 12px;"> 
<div id="ext-gen2287" class="x-combo-list-inner" style="width: 178px; height: 69px;"> 
<div class="x-combo-list-item">General</div> 
<div class="x-combo-list-item x-combo-selected">Instrumental</div> 
<div class="x-combo-list-item">Microbial</div> 

</body> 
</html> 

使用的代码:

driver.findElement(By.xpath("//input[@id='"+inputid+"']/pare‌​nt::*//img")).click(‌​); 
driver.findElement(By.xpath("//div[contains(@class,'x-comb‌​o-list-item')]/paren‌​t::*/div[text()='Gen‌​eral']")).click();
+0

driver.findElement(By.xpath( “//输入[@id = ' ”+ inputid +“'] /父:: * // IMG”))点击(); ()/ div [contains(@ class,'x-combo-list-item')]/parent :: */div [text()='General']“) )。单击(); – srikanth

+0

在共享的HTML中''//输入[@id ='...']“标签在哪里? – DebanjanB

回答

0

您可以使用以下,在你得到elements.You列表可以点击你想要的元素根据你的用例。 。

List<WebElement> myElements = driver.findElements(.//div[@class='x-combo-list-inner']/div[text()='General']); 
for(WebElement e : myElements) { 
    System.out.println(e.getText()); 
} 
相关问题