非for-each情况下取某一节点的position()

参考内容:http://www.dpawson.co.uk/xsl/sect2/N6099.html#d8485e389

今天在工作中遇到了一个问题,需要得到某个节点的position()值,在网上找到了一个比较良好的解决办法。

代码如下: 

<xsl:variable name="fund-position" select="count($xmlData-path/datasetone/x-value[@date = $fund-start-date][1]/preceding-sibling::*)+1"/>

利用 preceding-sibling

(上下文节点的前兄弟节点,属性节点和名称空间节点没有前兄弟节点 )

取得该节点之前的同类节点数目,再+1,就得到了当前的position().

posted on 2010-08-04 17:55  沉水  阅读(218)  评论(0编辑  收藏  举报

导航