1

我需要通过创建一个实现该类的ITemplateStreamfilter类来修改我的 trac 浏览器视图中的文件表。我尝试使用Transformerfrom genshi.filters.transform。我的桌子看起来像

<tbody>
<tr class="even">
<td class="name">
<a class="partent" title="Parent Directory" ..>..</a>
</td>
..
</tr>
..
</tbody>

我现在需要</td>在表格第一行的第一个单元格之前插入一个标签。问题是我只能通过搜索“父目录”标题来识别我想要放置新单元格的列的位置: Transformer('//*[@title="Parent Directory"]')。我怎样才能将一个标签上移而不是将新单元格放在第一个<td class="name">标签之前?

4

1 回答 1

1

我不太熟悉对XPATHBUTTransformer的支持:

那么 Transformer('(//td[*[@title="Parent Directory"]])[1]'),然后使用该before方法呢?

据我了解,这应该选择 td一个具有属性的子节点的节点title="Parent Directory"

如果您想选择任何 td具有这种子节点的使用 Transformer('//td[*[@title="Parent Directory"]]')

但是,这仅 Transformer支持这些XPATH表达式时才有效。

编辑 1

如果你确定,你td有一个属性,class="name"你也可以使用Transformer('(//td[class="name" and *[@title="Parent Directory"]])[1]')

于 2013-11-13T08:28:52.740 回答