[导入]关于xslt中current()和(.)的区别
在xslt中有current和(.)看起来都表示当前节点,似乎差不多,其实不同,而且绝对是缺一不可的。
(.)实际上就是self::node()
来看一个例子,比如,对于如下xml
<books>
<group type="1" index="6" name="aaaa"/></group>
<group1 type="1" index="4" name="aaaa"/></group1>
<book group="group"/>
<book group="group1"/>
<book group="group"/>
<book group="group1"/>
<book group="group"/>
<book group="group1"/>
</books>
每个group引用的index都是一个book的number
假如我们在设计book的模板的时候,想调用aaaa,就应该这样:
<xsl:value-of select="../../group[name(.)=name(current)]/@name">
就着样在xpath的路径中.随路径变化,而current不随xpath路径变化。
posted on 2005-03-31 19:46 K_Reverter 阅读(234) 评论(0) 收藏 举报
浙公网安备 33010602011771号