圣诞快乐。。CSDN的兄弟姐妹们!请问xsl中变量循环递增怎么做?

ecobin 2004-12-26 04:14:48

如题,看了孟子老师的"在XSL里执行类似for(i=0;i<n;i++)的循环"愣是没看懂。。。汗~~

请高人帮着改一下。。偶XML菜菜!!! :(

<?xml version="1.0" encoding="GB2312"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<xsl:apply-templates select="//item"/>
</xsl:template>

<xsl:template match="item">
<xsl:element name="card">
<xsl:attribute name="id"><!--这里是要循环递增的变量level--></xsl:attribute>
<xsl:element name="a">
<xsl:attribute name="href"><xsl:value-of select="link"/></xsl:attribute>
<xsl:value-of select="title" />
</xsl:element>
</xsl:element>
</xsl:template>

</xsl:stylesheet>
...全文
108 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
yjs_lh 2004-12-27
  • 打赏
  • 举报
回复
递增实际上是利用的递归,你可以先去看看数据结构与算法方面的书。
至于你的问题,可以不使用递归,直接使用position()即可解决。
<?xml version="1.0" encoding="GB2312"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<xsl:for-each select="//item">
<card name="{position()}">
<a href="{link}">
<xsl:value-of select="title"/>
</a>
</card>
</xsl:for-each>
</xsl:template>
孟子E章 2004-12-26
  • 打赏
  • 举报
回复
可以的呀
看看例子


http://dotnet.aspx.cc/ShowDetail.aspx?id=4052DA03-51E0-464B-8418-3C1354920F8F
http://dotnet.aspx.cc/ShowDetail.aspx?id=YAWO3QGM-XD53-4D3D-OYBR-BLSBX5BNGAYM
ecobin 2004-12-26
  • 打赏
  • 举报
回复
可是。。我切不中要点。。。还是不会。。汗

8,906

社区成员

发帖
与我相关
我的任务
社区描述
XML/XSL相关问题讨论专区
社区管理员
  • XML/XSL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧