【发布时间】:2014-10-20 21:02:04
【问题描述】:
我有一张如下表:
<tr class="ng-scope" ng-repeat="client in clients">
<td class="text-left ng-binding">Apu Nahasapeemapetilon</td>
<td class="text-left ng-binding">AN</td>
<td class="text-left">
<span class="ng-scope" ng-repeat="group in client.SecurityGroups">
<a class="label label-info ng-binding" href="#/SecurityGroup/MemberClients/a1cbf118-2c40-4ae7-a9f8-136bec945849/Assistants"> Assistants </a>
<span class="ng-scope" ng-repeat="group in client.SecurityGroups">
<a class="label label-info ng-binding" href="#/SecurityGroup/MemberClients/e4bd1580-3997-4f3d-a975-189e1fdccb4c/Managers"> Managers </a>
我正在尝试在第三个单元格中的链接上定位。此单元格中可以有多个链接。理想情况下,我想通过定位单元格 1 或 2 来识别行。
所以上面表格数据的想法是:查找带有客户端代码 AN 的行(在单元格 2 中),然后在该行中找到链接“Assistants”(在单元格 3 中)。
我的项目中有一个类似的表格,下面的 XPpath 将执行我在该表格上的目标:
//tr[.//td='AN'] // a[.='Managers']
但它似乎在上面的表格上不起作用......
如果我这样做:
//tr[.//td='AN'] // a
对于包含“AN”的行,它将突出显示单元格中的所有链接(即以助理和经理结尾的链接),但我似乎无法将其定位在单个链接上。
【问题讨论】:
-
您的 XPath 几乎是正确的,但在 HTML 中,
Managers和Assistants周围有空格。你可以使用//tr[.//td='AN'] // a[.=' Managers '](注意多余的空格)或者//tr[.//td='AN'] // a[contains(., 'Managers')]。
标签: xpath