无法单击下拉列表中的元素
not able to click on element from drop down list?
HTML代码:
<ul class="dropdown-menu" role="menu">
<li>
<a href="#/profile">
<i class="fa fa-user"></i> My Profile </a>
</li>
<li>
<a href="#/source">
<i class="fa fa-user"></i> Source </a>
</li>
<li>
<a href="/user/logout">
<i class="fa fa-user"></i> Logout </a>
</li>
</ul>
我的代码:
element(by.cssContainingText('i.fa.fa-user', ' My Profile ')).click();
问题:我试图使用class和cssContaingText点击元素,但无法点击。请帮帮我。
请帮我
您可能也通过by.cssContainingText
解决了它。当前方法的问题是,您正在检查i
元素内的文本,在您的情况下,它是空的:
<a href="#/profile"><i class="fa fa-user"></i> My Profile </a>
要检查的文本位于a
元素内部:
element(by.cssContainingText('ul.dropdown-menu > li > a', 'My Profile')).click();
或者,您可以在不检查文本的情况下解决它:
element(by.css("a[href*=profile]")).click();
不过,我同意"通过部分链接文本"选项在这种情况下是一个更好的选择。
我得到了答案:我尝试了这个代码,它运行得很好。
element(by.partialLinkText('My Profile')).click();
相关文章:
- 如何在按钮中显示下拉列表中选定的元素
- 使用Razor和javascript来获得下拉列表元素
- 将onclick事件附加到具有一个元素的下拉列表中
- 保持元素处于禁用状态,直到未在 Angularjs 中选择下拉列表
- 根据下拉列表中选择的项目隐藏所有元素
- 将同一个元素追加到两个下拉列表中只会导致最后一个元素被追加
- 如何在输入框中只显示名称,而在选择元素的下拉列表中显示名称和数字
- 如何使下拉列表展开单击按钮元素
- 根据下拉列表中选择的内容隐藏和显示 HTML 元素
- 下拉列表使元素移动
- 选择其他字段元素时如何重置选择选项下拉列表
- 未在选择标记下拉列表中选择以隐藏其他输入元素的嵌套控制器
- 单击其他元素(文本输入)时显示下拉列表
- 剑道UI [下拉列表] - 多个元素中的冲突
- 如何使用 HTML 中的下拉列表更改元素
- JavaScript - 如何检测选择元素上的编程值更改(下拉列表)
- 隐藏“选择”下拉列表的元素
- jQuery 下拉列表 将鼠标悬停在两个不同的元素上
- 在选择框(下拉列表)中检查元素 ID 值
- JqueryUI 工具提示可防止<选择>元素下拉列表在 IE 11 中保持关闭