在webdriver中搜索具有相同类名的元素

时间:2013-05-20 05:00:33

标签: java selenium-webdriver

我需要为下拉框编写脚本。同一屏幕上有两个下拉元素,两个下拉框都有类似的类名(下拉框是搜索和选择类型),并且没有任何元素的唯一ID。 所以脚本可以从第一个下拉列表中选择元素,但是当它应该在第二个下拉列表中执行相同时它会失败。

回复

此致

<div class="title-edit-form" id="49156080-2097-ea0f">
<div class="control-group required">
<label class="control-label">Title
</label>
<div class="controls row-fluid">
<div class="select2-container span12 select2-container-active select2-dropdown-open"   id="s2id_title">    
<a href="#" onclick="return false;" class="select2-choice" tabindex="-1">   
<span>de</span>
<abbr class="select2-search-choice-close" style="display:none;">
</abbr>   
<div>
<b></b>
</div>
</a>    
</div>
<input class="span12" id="title" type="hidden" style="display: none;" value="-1">
</div>
</div>
<div class="select2-drop select2-drop-active" style="display: block; top: 177px; left: 536px; width: 530px;">   
<div class="select2-search">       
<input type="text" autocomplete="off" class="select2-input select2-focused" tabindex="-1" style="">   
</div>   
<ul class="select2-results">
<li class="select2-results-dept-0 select2-result select2-result-selectable select2-new">
<div class="select2-result-label">
<span class="select2-match">de</span>
</div>
</li>
<li class="select2-results-dept-0 select2-result select2-result-selectable">
<div class="select2-result-label">
<span class="select2-match">De</span>
"an"
</div>
</li>
<li class="select2-results-dept-0 select2-result select2-result-selectable select2-highlighted">
<div class="select2-result-label">
"Stu"
<span class="select2-match">de</span>
"nt"
</div>`enter code here`
</li>
</ul>
</div>

1 个答案:

答案 0 :(得分:1)

最好的方法是使用cssSelector()来处理这类事情,特别是来自nth-child()的{​​{1}}函数。

例如:

cssSelector()

More about cssSelector()

exemple wokring here -> JSfiddle

相关问题