使用XPath和HTML敏捷性包,我需要使用destination选择color:#ff00ff文本。

我的HTML看起来像这样:

<table>
   <tr style="color:#ff00ff">
      <td></td>
   </tr>
   <tr>
      <td>destination</td>
   </tr>
   <tr>
      <td></td>
   </tr>
   <tr>
      <td>not destination</td>
   </tr>
</table>
有帮助吗?

解决方案

/table/tr[@style = "color:#ff00ff"]/following-sibling::tr[1]/td[1]/text()

选择具有<tr>style="color:#ff00ff",并从那里,第一以下<td>的第一<tr>孩子的文本。

有关额外的安全,你可以使用:

tr[translate(@style, ' ', '') = "color:#ff00ff"]

此将删除属性值的任何空间,所以事情变得更加独立于HTML源的位

其他提示

使用jQuery它可能看起来是这样的:

$('tr[style*="color:#ff00ff"]').next('tr').children().text();

这在很大程度上取决于你的确切文件结构和风格的定义,虽然。它会发现有包含字符串“COLOR:#FF00FF”风格的任何TR(确切地说,没有空格等)。从该行会再选择下一个兄弟行并从所有获取文本内容是直接孩子。在您的情况下,这将是单个列元件。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top