我有这张桌子
<table class="table">
<thead>
<tr>
<th class="col-sm-5">Actions</th>
<th class="col-sm-5">Title</th>
<th class="col-sm-2">Saved</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="calc in calculations">
<td>
<a class="btn btn-default btn-sm" ng-click="removeCalculation(calc.calcId)">
<i class="fa fa-trash-o"></i>
</a>
<a class="btn btn-default btn-sm" href="#">
<i class="fa fa-bar-chart-o"></i>
</a>
<a class="btn btn-default btn-sm" ng-href="#/user/{{user.userId}}/calculation/{{calc._id}}">
<i class="fa fa-folder-o"></i>
</a>
<a id="copyCalcButton" class="btn btn-default btn-sm" ng-click="copyCalculation(calc.calcId)">
<i class="fa fa-copy"></i>
</a>
</td>
<td>{{calc.title}}</td>
<td>{{calc.savedAt}}</td>
</tr>
</tbody>
</table>
我想要我的copyCalculation功能。首先,我想检查一下我的阵列长度:
var nrOfCalc = browser.element.all(by.repeater('calc in calculations')).count();
我想按下表格中的第一项,然后检查m y数组中是否还有一项。
如何点击表格中的第一项?
我试过这样的事情,但是我被卡住了。
var firstRowIn;
browser.findElements(protractor.By.tagName('tr')).then(function(rows){
firstRow = rows[0];
});
一些伪代码:
firstRow...click('on the id="copyCalc")
感谢任何帮助!
答案 0 :(得分:9)
试试这个:
element(by.repeater('calc in calculations').row(0)).$('#copyCalc').click()
或
element(by.repeater('calc in calculations').row(0)).element(by.css('#copyCalc')).click()
答案 1 :(得分:4)
get()
代替row()
:
element(by.repeater('calc in calculations').get(0)).$('#copyCalc').click()
答案 2 :(得分:0)
browser.findElements(protractor.By.repeater('calc in calculations').then(function (table) {
table.findElements(protractor.By.tagName('tr').then(function(rows) {
//firstRow = rows[0];
row[0].click();
});
});
希望这有帮助。