xml – XSLT中的变量增量
发布时间:2020-12-16 22:53:47 所属栏目:百科 来源:网络整理
导读:我有一个像xml这样的文件 node elm val="data1"/ elm val="data2"/ elm val="data3"/ elm val="data4"/ elm val="data5"/ elm val="data6"/ elm val="data7"//node 我需要为这个xml文件编写一个xslt来显示在表格中 1 dat1 2 dat2 3 dat3 4 dat4 5 dat5 6 dat
我有一个像xml这样的文件
<node> <elm val="data1"/> <elm val="data2"/> <elm val="data3"/> <elm val="data4"/> <elm val="data5"/> <elm val="data6"/> <elm val="data7"/> </node> 我需要为这个xml文件编写一个xslt来显示在表格中 1 dat1 2 dat2 3 dat3 4 dat4 5 dat5 6 dat6 7 dat7 请帮我这样做 解决方法<xsl:tempate match="node"> <table> <xsl:call-template select="elm"/> </table> </xsl:template> <xsl:template match="elm"> <tr> <td> <xsl:value-of select="count(preceding-sibling::elm) + 1"/> </td> <td> <xsl:value-of select="@val"/> </td> </tr> </xsl:template> 或者,如果需要确切的输出,请使用以下elm模板. <xsl:template match="elm"> <xsl:param name="pos" select="count(preceding-sibling::elm) + 1"/> <tr> <td> <xsl:value-of select="$pos"/> </td> <td> <xsl:text>dat</xsl:text> <xsl:value-of select="$pos"/> </td> </tr> </xsl:template> 或者在文本输出的情况下: <xsl:tempate match="node"> <xsl:foreach select="elm"> <xsl:value-of select="count(preceding-sibling::elm) + 1"/> <xsl:text> dat</xsl:text> <xsl:value-of select="count(preceding-sibling::elm) + 1"/> <xsl:text disable-output-escaping="yes">&#xA;</xsl:text> </xsl:foreach> </xsl:template> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |