selenium XPATH识别表内的td

时间:2017-03-03 17:40:41

标签: c# html selenium xpath automation

我有一个表中有多行。我希望xpath用class =' rowaction'(可以在任何td中)识别div,但我唯一的输入是字符串& #39; TTD'(可以在任何td中)。基于' TDD'我想识别div.Below是我的HTML结构

<tbody>
<tr>
    <td></td>
    <td>
        <div> 
            <div class="rowaction"/>
        </div>
    </td>
    <td>
    <div> 
            <div />
            <span>
                <span>TTD</span>
            </span>
        </div>
    </td>
    <td></td>
    <td></td>
</tr>
<tr>..</tr>
<tr>..</tr>
</tbody>

提前致谢

1 个答案:

答案 0 :(得分:1)

假设只有一个td包含div,每行class

//span[contains(text(),'TTD')]/ancestor::tr//div[@class='rowaction']

故障:

查找包含文字&#39; TTD&#39;的范围(或确切的文字[text()='TTD']

//span[contains(text(),'TTD')]

获取包含span

的行
/ancestor::tr

在该行中找到具有完全div名称&#39; rowaction&#39;

class
//div[@class='rowaction']

这就是全部。如果class还有其他内容,您也可以执行contains(@class, 'rowaction')

只是要完成,前轴方法:

//tr[descendant::span[contains(text(),'TTD')]]//div[@class='rowaction']