如何使用水豚 "find" 按标题索引获取数据元素?
how to get data element by title index with capybara "find"?
我有 html 页:
<html>
<body>
<th>a</th>
<th>b</th>
<th>c</th>
<th>d</th>
<th>e</th>
<th>f</th>
<th>g</th>
<th>h</th>
<th>i</th>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td>5</td>
<td>6</td>
<td>7</td>
<td>8</td>
<td>9</td>
</body>
</html>
我需要通过选择标题(th 标签)来获取数据(td 标签)。
我正在尝试:
page.find(:xpath, "//body/td[count(//body/th[contains(.,'a')]/preceding-sibling::th)-1]")
我希望得到“1”作为返回值,但它 returns“8”。
在我看来,"count" 不正确。那么,我做错了什么?
逻辑应该计算前面的兄弟 th
加 1,找到 th
的正确位置索引:
//body/td[count(//body/th[contains(.,'a')]/preceding-sibling::th)+1]
输出:
<td>1</td>
我有 html 页:
<html>
<body>
<th>a</th>
<th>b</th>
<th>c</th>
<th>d</th>
<th>e</th>
<th>f</th>
<th>g</th>
<th>h</th>
<th>i</th>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td>5</td>
<td>6</td>
<td>7</td>
<td>8</td>
<td>9</td>
</body>
</html>
我需要通过选择标题(th 标签)来获取数据(td 标签)。 我正在尝试:
page.find(:xpath, "//body/td[count(//body/th[contains(.,'a')]/preceding-sibling::th)-1]")
我希望得到“1”作为返回值,但它 returns“8”。 在我看来,"count" 不正确。那么,我做错了什么?
逻辑应该计算前面的兄弟 th
加 1,找到 th
的正确位置索引:
//body/td[count(//body/th[contains(.,'a')]/preceding-sibling::th)+1]
输出:
<td>1</td>