Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xpath 选择节点,其中包含具有特定属性的子体_Xpath - Fatal编程技术网

Xpath 选择节点,其中包含具有特定属性的子体

Xpath 选择节点,其中包含具有特定属性的子体,xpath,Xpath,我的结构类似于: <tr> <td>I WANT THIS</td> <td> <a class="unread">text</a> </td> <td></td> </tr> <tr> <td></td> <td> <a class="read

我的结构类似于:

<tr>
    <td>I WANT THIS</td>
    <td>
        <a class="unread">text</a>
    </td>
    <td></td>
</tr>
<tr>
    <td></td>
    <td>
        <a class="read">text</a>
    </td>
    <td></td>
</tr>

我想要这个
文本
文本
我需要选择
节点,这些节点具有属性
[@class='unread']
节点,以便稍后选择内部


我尝试了
//tr[a/@class='unread']
//tr/a[@class='textMsg unread']
,但没有成功。如何获取我的
节点?

标记不是
tr
标记的子项,您可以尝试以下xpath:

//tr[.//a/@class='unread']


要选择所需的
td
元素,请使用

//tr//td[.//a[@class = 'unread']]
//tr/td[a[@class = 'unread']]
如果已知
td
tr
的子级,
a
td
的子级,则上述可简化为

//tr//td[.//a[@class = 'unread']]
//tr/td[a[@class = 'unread']]

第一种似乎有效。谢谢这里有一个方法,我如何直接获得我的