获取冷编号的Xpath方法



我想从多行中的一列访问数据。此列是动态的,但始终具有相同的标题。有时是td[5],有时是td[20],这取决于用户想要显示多少个月。目前,我使用for循环来查找列号。

let col = 4
while(getText(//thead//th[col]) != "YTD"){
col++
}

然后当我需要在随后的行中相同的列时,我可以访问//tr[12]/td[col]

有更好的方法吗?结构是非常标准的

<table>
<thead>
<tr>
<th></th>
...
<th>YTD</th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td></td>
...
<td></td>
</tr>
</tbody>
</table>

这里需要的是preceding-sibling轴。

查找标题,并计算前面的兄弟<th>元素的数量。

count(//thead//th[col="YTD"]/preceding-sibling::th) + 1

最新更新