如何在XSL中選擇具有特定屬性的節點的位置?
具有屬性的節點的位置
XML:
<document type="async" page="tabTabel">
<tabs>
<table>
<row type="header">
<column type="text">href</column>
<column type="number">Mapnr.</column>
<column type="mapposition">Nr.</column>
<column type="text">Description</column>
<column type="text">Document</column>
<column type="date">Date</column>
</row>
<row type="data">
<column><![CDATA[]]></column>
<column><![CDATA[10]]></column>
<column><![CDATA[17]]></column>
<column><![CDATA[Documentation may 2013 .pdf]]></column>
<column><![CDATA[Documentation may 2013 .pdf]]></column>
<column><![CDATA[03-04-2014]]></column>
</row>
</table>
</tabs>
</document>
目前沒有工作的XSLT:
<xsl:template match="tabs//row[@type='data']>
<xsl:variable name="mapnumber">
<xsl:value-of select="../row[@type='header']/column[@type='mapposition'][position()]" />
</xsl:variable>
</xsl:template>
我想用型 'mapposition' 列的索引號/位置。我怎樣才能做到這一點?
對不起,這確實做了我需要的。非常感謝!它是如何工作的? – Grafit 2014-12-04 12:51:39
它計算選定列之前的列(在同一行中)。你的例子中有兩個(文本和數字)。加+1,你得到索引位置= 3。 – 2014-12-04 13:00:21