我正在构建一个XPath,它选择网格中的单元格,按列和行索引。我在应用程序中有两种类型的网格。一个是常规网格,另一个是嵌套网格(在其内部)。
我想要一个适用于两个网格的XPath。
(黄色单元格表示XPath选择)
常规网格:
的XPath:
//*[@id='regularGrid']//table/tbody/tr[1]/td[1]
HTML:
<div id="regularGrid">
<table>
<tbody>
<tr role="row">
<td>Things</td>
<td>Things</td>
</tr>
<tr></tr>
</tbody>
</table>
</div>
的XPath:
//*[@id='gridWithNestedGrid']//table/tbody/tr[1]/td[1]
HTML:
<div id="gridWithNestedGrid">
<div class="k-grid-content">
<table>
<tbody>
<tr class="k-master-row ng-scope" role="row">
<td>1390</td>
<td>1625</td>
<td>625</td>
</tr>
<tr class="k-detail-row ng-scope" role="row">
<td class="k-detail-cell">4167</td>
<td class="k-detail-cell">486</td>
<td class="k-detail-cell">6834</td>
</tr>
<tr></tr>
</tbody>
</table>
</div>
问题: 我需要一个XPath,它适用于两个不选择嵌套网格的网格。问题是嵌套的网格div嵌套在div中。
以下XPath适用于嵌套网格:
//*[@id='gridWithNestedGrid']/div/table/tbody/tr[1]/td[1]
但我需要一个适合两者的。
答案 0 :(得分:1)
此合并的XPath选择:
//*[@id='gridWithNestedGrid' or @id='regularGrid']//table/tbody/tr[1]/td[1]
第一个(regularGrid
)的输出:
Things
第二个(gridWithNestedGrid
)的输出:
1390
这是你期望的结果吗?