2016-08-02 38 views
0

Html选择标签包含Id。我在相对路径中使用了id,并通过单击评估按钮在firepath中进行测试.firepath只返回一个匹配节点,但选择框未突出显示。它清楚地表明,选择框不会被处理。我尝试了很多方法,并没有帮助我。请找到下面WebDriver:相对Xpath不突出显示当我点击firepath中的评估按钮时选择框

<select id="myForm:operatingUnit" class="ef-combo-container" style="display:none;" name="myForm:operatingUnit"> 
<option value="-1">Please Select</option> 
<option value="702">Industrial Casualty</option> 
<option value="703">General Casualty</option> 
<option value="704">Specialty Primary</option> 
</select> 
<input id="myForm:operatingUnit_input" class="combo-input ui-autocomplete-input" value="Please Select" autocomplete="off" role="textbox" aria-autocomplete="list" aria-haspopup="true" title="Please Select"/> 

Please find the relative xpath on below: 
//select[@id='myForm:operatingUnit'] 

我已经使用各种露骨等待statments很好,但不工作了,从这个问题要克服的HTML标签。 请帮我解决这个问题

+0

您是否检查过元素是否包含在iframe中?您也可以尝试使用以下css:input [id * = myForm] [id * = operatingUnit] – lauda

+0

它不在框架内。大小显示正确。 system.out.println(weblement.getOptions()。size) 它返回大小为4 – Ashok

回答

1

Select如何显示?在HTML代码中,我可以看到css property为: -

style="display:none;" 

由于这种性能的元素没有在网页上显示。这里有什么问题?

如果删除此CSS属性,该元素将显示在网页上,并且将使用您已使用的xpath高亮显示。

如果你想仍与要素互动,必须修改元素的CSS属性,下面是修改代码: -

WebElement element = driver.findElement(By.id("myForm:operatingUnit")); 
((JavascriptExecutor)driver).executeScript("arguments[0].setAttribute('style', arguments[1]);", element, "display:unset;"); 

一旦其修改Select将显示和那么你可以与它进行交互。

+0

其客户端应用程序。我们无法对html标签部分进行任何更改。有没有其他的方式来处理webdriver? – Ashok

+0

我修改了我的答案。 – Paras

相关问题