无法在Xpath中找到文本

时间:2014-05-13 06:46:23

标签: selenium xpath selenium-webdriver

我正在编写关系xpath我需要这个代码来获取" Tax"位置

<td id="td26" style="width: 16%">
<div class="bglabel" style="width: 150px; clear: both">
Tax 
<div style="float: right;">
</div>
</td>

我写的Xpath代码

td[div[text()='Tax ']] - Not Working
td[div[contains(text(),'Tax')]] - Not Working 

1 个答案:

答案 0 :(得分:1)

接受的答案改变了OP的预期逻辑。

OP尝试做的是在div内找到td文字“Tax”,因此OP自己的答案是正确的,接受的答案不是。

//div[contains(text(),'Tax')]将其定位在DOM中的任何位置,这可能会造成麻烦。

OP想要的是(使用.指定当前节点):

//td[./div[contains(text(),'Tax')]]

想象一下,还有另一个div还包含文字“Tax”,//div[contains(text(),'Tax')]会找到一个OP不想要的。

<div>Tax table</div>
<table>
  <tr>
    <td id="td26" style="width: 16%">
      <div class="bglabel" style="width: 150px; clear: both">Tax <div style="float: right;"></div></div>
    </td>
  </tr>
</table>

@ Santhosh.S:希望这对你有意义。