这是我的HTML代码:
<div class="chosen-container chosen-container-single" style="width: 240px;" title="">
<a class="chosen-single" tabindex="-1">
<span>General Information</span>
<div>
<b></b>
</div>
</a>
<div class="chosen-drop">
<div class="chosen-search">
<input type="text" autocomplete="off">
</div>
<ul class="chosen-results">
<li class="active-result ng-binding" data-option-array-index="0" style="">Please select an option</li>
<li class="group-result">General</li>
<li class="active-result result-selected group-option" data-option-array-index="2" style="">General Information1</li>
<li class="active-result group-option" data-option-array-index="3" style="">General Information2</li>
<li class="active-result group-option" data-option-array-index="4" style="">General Information3</li>
<li class="active-result group-option" data-option-array-index="5" style="">General Information4</li>
<li class="active-result group-option" data-option-array-index="6" style="">General Information5</li>
<li class="active-result group-option" data-option-array-index="7" style="">General Information6</li>
<li class="active-result group-option" data-option-array-index="8" style="">General Information7</li>
<li class="active-result group-option" data-option-array-index="9" style="">General Information8</li>
<li class="active-result group-option" data-option-array-index="10" style="">General Information9</li>
<li class="active-result group-option" data-option-array-index="11" style="">General Information10</li>
</ul>
</div>
</div>
能够点击
下拉列表reportdropdown=element(by.css('a.chosen-single'));
尝试使用以下代码:
reportdropdown.all(by.css("li.active-result.result-selected.ng-binding")).get(1).click();
请建议通过文字或索引选择选项的解决方案。 提前谢谢。
答案 0 :(得分:0)
要按文字选择,请使用cssContainingText
。
还要将定位器中的识别符减少到必要的
$('div.chosen-container-single').element(by.cssContainingText("li.active-result"), 'text of option to select').click();
对于索引,只需将get(1)
替换为get(index)
。
$('div.chosen-container-single').all(by.css("li.active-result")).get(index).click();
或者如果您希望它成为定位器的一部分:
$('div.chosen-container-single').element(by.css('li.active-result[data-opion-array-index="'+index+'"]"')).click();
<强>更新强>:
我错过了,您的<a>
- 代码不是<ul>
的父代。因此,请用父元素替换reportdropdown
。