我有下一张桌子的结构:
<table>
<thead>
<tr>
<th>User Role</th>
<th>Inactive</th>
<th>Admin Area</th>
<th>Need Confirm</th>
</tr>
</thead>
<tbody>
<tr>
<td>Admin</td>
<td>False</td>
<td>True</td>
<td>False</td>
</tr>
<tr>
<td>Member</td>
<td>False</td>
<td>False</td>
<td>True</td>
</tr>
</tbody>
</table>
如何从第一列中根据列名和行选择一个单元格(例如,为Admin Area
选择Member
单元格值)?
答案 0 :(得分:1)
如果您可以保证User Role
是第一列,则可以使用以下内容:
//td[count(//th[text()="Admin Area"]/preceding-sibling::*)+1][../td[1]="Member"]
说明:
count(//th[text()="Admin Area"]/preceding-sibling::*)+1
为您提供表标题中“管理区域”的索引,在本例中为3 //td[3]
选择第三列中的所有td
单元格//[../td[1]="Member"]
通过仅选择第一列中包含td
的同级"Member"
单元格来进一步证明这一点。