有没xslt的高手?生成excel的方案中,我想动态的设置ss:index的值

william威廉 2010-11-16 10:47:53
看了一下,网上说如果<xsl:variable>设置了变量后,就无法修改这个值了,那如何才能循环的增加呢?我想动态的设置ss:index的值。

网上看了说用模板循环嵌套的方法,但是试了也不行,就这个网站:http://dotnet.aspx.cc/article/4052da03-51e0-464b-8418-3c1354920f8f/read.aspx

有没高手来帮忙一下


...全文
261 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hzz2114 2011-04-22
  • 打赏
  • 举报
回复
LZ 问题解决了吗?我想知道你是怎么解决的!
william威廉 2010-11-23
  • 打赏
  • 举报
回复
没用你的方法,但是也是后台赋值数据源的时候加了一个参数,这个参数是动态变化的,来达到了我的目的
symbol_bc 2010-11-16
  • 打赏
  • 举报
回复
在下部的

<xsl:for-each select="$externalDocument//Table">

这里,就是读取该xmldocument
symbol_bc 2010-11-16
  • 打赏
  • 举报
回复
加入楼主有一个这样的xslt文档,请注意的顶部的这句代码
<xsl:param name="externalDocument"></xsl:param>
这就是外部引入的xmldocument

<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="UTF-8" indent="no"/>
<xsl:param name="externalDocument"></xsl:param>
<xsl:template match="/">
<table border="0" cellpadding="0" cellspacing="0" style="height: 385px;">
<xsl:apply-templates select="Main"></xsl:apply-templates>
</table>

</xsl:template>
<xsl:template match="Main">
<tbody>
<tr>
<td id="contentscell" colspan="5">
<xsl:for-each select="Section">
<div class="contents" id="contents1">
<table border="0" width="100%" style=" height:100%">
<tr valign="top">

<td style=" width:100%" valign="top">

<fieldset style="border: 1px solid #C0C0C0;">
<table border="0" width="100%" style="height:100%; font-size: 9pt;">
<xsl:for-each select="Item">
<tr valign="top">
<td style=" width:5px">
</td>
<td>

<select ID="BindSourceConfigName" Name="BindSourceConfigName">
<option value="" selected="true">请选择... ...</option>
<xsl:for-each select="$externalDocument//Table">
<option>
<xsl:attribute name="value">
<xsl:value-of select="id"/>
</xsl:attribute>
<xsl:value-of select="showname"/>
</option>
</xsl:for-each>

</select>

</td>
<td>
</td>
</tr>
</xsl:for-each>
</table>
</fieldset>
</td>
<td>
<xsl:text disable-output-escaping="yes">&nbsp;</xsl:text>
</td>
</tr>
</table>
</div>
</xsl:for-each>
</td>
</tr>
</tbody>
</xsl:template>


</xsl:stylesheet>

symbol_bc 2010-11-16
  • 打赏
  • 举报
回复
可以用code的方式在外部给xslt文档传递一个参数,这个参数可以是一个xmldocument对象,这样的话
楼主完全可以操作这个xmldocument对象,来达到你想要的结果。

62,271

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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