单击基于文本和href属性量角器的链接

时间:2016-10-21 15:00:14

标签: selenium protractor

这个问题对某些人来说可能很容易。 我想点击基于href值的链接和链接中的文本。我正在使用它来搜索链接中的文本。

var elementselected = this.coinDataTable.element(by.css('a[href*='+CoinLink+']'));

我尝试了以下代码,但它无法正常工作。有人可以建议正确使用吗?

var elementselected = this.coinDataTable.element(by.css('a[href*="'+CoinLink+'"][text='CoinText'));

OR

var elementselected = this.coinDataTable.element(by.css('a[href*='+CoinLink+']')).element(by.linkText('CoinText'));

var elementselected = this.coinDataTable.element(by.linkText('CoinText')).element(by.css('a[href*='+CoinLink+']'));

此链接位于表格内。下面是整行的HTML。此行中有2个链接。我想选择其中包含CoinText的第二个。

<tr>
<td><a href="CoinLink"><img border="0" src="../../../images/pc_cdlibrary_side_icon_img_lighterbg.gif"></a></td>
<td>1C</td>
<td>MS</td>
<td><a href="CoinLink">CoinText</a></td>
<td>$15</td>
<td>S-12 </td>
<td>B-21</td>
</tr>

2 个答案:

答案 0 :(得分:1)

您可以使用by.cssContainingText按文字和属性查找元素:

by.cssContainingText('[href*="CoinLink"]', 'CoinText')

答案 1 :(得分:-1)

此代码可帮助我解决问题

element(by.css('a[href*="CoinLink"]')).getText()).toContain('CoinLink')