Javascript 如何使用量角器按文本查找并单击表格元素?

Javascript 如何使用量角器按文本查找并单击表格元素?,javascript,angularjs,selenium,protractor,end-to-end,Javascript,Angularjs,Selenium,Protractor,End To End,编辑: element.all(by.repeater('column in columns')).findElement(by.id('code')).getText('Some Text').click(); 您需要输入所需的元素: <tr> <td>Some Name</td> <td>Some Text</td> </tr> <tr> <td>More Name</td> <

编辑:

element.all(by.repeater('column in columns')).findElement(by.id('code')).getText('Some Text').click();
您需要输入所需的元素:

<tr>
<td>Some Name</td>
<td>Some Text</td>
</tr>
<tr>
<td>More Name</td>
<td>More Text</td>
</tr>

我认为当您准备发出
$http
请求时,量角器就会出现。将在循环中获得相同的id,请尝试使用findElement(by.id('row_0'))单击第一行。若您在整个页面上有唯一的“id”,则无需在之前选择by.repeater(“column in columns”)。我想谢谢,Drugator说不能点击Undefined,所以我假设Drugator没有找到任何元素,但有一个元素和我写的文本,我在第1篇文章中做了一些修改,在一个更简单的例子中得到正确的结果
<tr ng-repeat="item in items>
<td>{{item.name}}</td>
<td>{{item.description}}</td>
</tr>
<tr>
<td>Some Name</td>
<td>Some Text</td>
</tr>
<tr>
<td>More Name</td>
<td>More Text</td>
</tr>
var columns = element.all(by.repeater('column in columns'));
columns.filter(function (elm) {
    return elm.getText().then(function (text) {
        return text == 'Some Text';
    });
}).first().click();