CSDN 论坛 XSL 中有一句不明白,求解!!!

Triumph 2005-08-19 03:05:26
在XSL样式表中显示发言内容的模板:
<xsl:template match="Content">
<table style="TABLE-LAYOUT: fixed" width="610" cellpadding="3">
<tr>
<td>
<xsl:element name="textarea">
<xsl:attribute name="class">content</xsl:attribute>
<xsl:attribute name="readonly">true</xsl:attribute>
<xsl:apply-templates />
</xsl:element>
</td>
</tr>
</table>
</xsl:template>

其它很好理解,但模板第八行:
<xsl:apply-templates />
就不理解了。这里使用的是什么模板?
...全文
549 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
firelove 2005-11-19
  • 打赏
  • 举报
回复
TO ;cds27(冰封)
真是個強人.學習
donghid 2005-11-16
  • 打赏
  • 举报
回复
冰封的解释是正确的.xml一切均是节点.
但是元素内的文本节点很容易让初学者困惑,常常对着元素节点就用nodeValue来取其的值.
skyhaha 2005-11-16
  • 打赏
  • 举报
回复
相当于调用系统的默认模板,如果你现在写了一个XSL但是里面没有对任何节点进行处理的话,系统就会调用从跟节点开始的<xsl:apply-templates/>默认模板,会把XML文件的所有内容显示出来.
net205 2005-09-25
  • 打赏
  • 举报
回复
<a/>
<name>Albert</name>
晕,我怎么这么菜,还是看不懂,,一个在<>里,一个在<>内,元素跟text节点的区别吧????
cocainy 2005-09-21
  • 打赏
  • 举报
回复
明白了些,多谢多谢。
关键是那个Text节点的默认Template的问题!
cds27 2005-09-21
  • 打赏
  • 举报
回复
我晕,跟你说了正确解释,你还说不是这么理解,那你理解了还问我们干嘛。

不清楚你怎么看我给的例子,你运行过我给的例子吗?如果没试过那你怎么理解?纸上谈兵不是正确的学习态度!再说了,你怎么知道我的例子和MSDN例子有什么不同?

XSL是事件型的语言,只要符合条件,就会自动触发满足条件的模板(也就是template)。

<xsl:apply-templates/>的意思是自动应用符合条件的模板。
<name>Albert</name>中的Albert是一个text节点。
在一般情况下,text节点会使用默认模板,不需要我们自己写。
如果要特别指定的话,那么如下:
<xsl:template match="text()">
...<!-- 你可以自己指定代码试试 -->
</xsl:template>

你把上面这段加上,看看还是不是
<?xml version="1.0" encoding="UTF-16"?>Albert, Terrance, Will, Sylvia, Timothy, Gordon, James, Robert, Dan, Sasha

真正的结果将是:
<?xml version="1.0" encoding="UTF-16"?>..., ..., ..., ..., ..., ..., ..., ..., ..., ...

cocainy 2005-09-21
  • 打赏
  • 举报
回复
补充说一下,以上例子的地址:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/xmlsdk/html/868d4a33-d209-40bc-84f1-4f80f8de9263.asp
cocainy 2005-09-21
  • 打赏
  • 举报
回复
TO: cds27(冰封)

我在msdn上看到的例子,我感觉可不是这样理解的.
例如xml数据文档:
<?xml version='1.0'?>
<?xml-stylesheet type="text/xsl" href="ifcomma.xsl" ?>
<namelist>
<name>Albert</name>
<name>Terrance</name>
<name>Will</name>
<name>Sylvia</name>
<name>Timothy</name>
<name>Gordon</name>
<name>James</name>
<name>Robert</name>
<name>Dan</name>
<name>Sasha</name>
</namelist>

xml转换文档:
<?xml version='1.0'?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >

<xsl:template match="namelist/name">
<xsl:apply-templates/>
<xsl:if test="position()!=last()">, </xsl:if>
</xsl:template>

</xsl:stylesheet>

输出结果:
<?xml version="1.0" encoding="UTF-16"?>Albert, Terrance, Will, Sylvia, Timothy, Gordon, James, Robert, Dan, Sasha

如果按你所说那么该怎么理解呢?

cds27 2005-09-09
  • 打赏
  • 举报
回复
举个简单的例子。
<doc>
<a/>
<b/>
</doc>
<xsl:template match="/doc">
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="a">
a
</xsl:template>
<xsl:template match="b">
b
</xsl:template>
----------------------
在上面XSL中,<xsl:apply-templates/> 作用等于<xsl:apply-templates select="a"/> <xsl:apply-templates select="b"/>
如果有N多个节点,则<xsl:apply-templates select="nodeN"/>
l506345z 2005-09-09
  • 打赏
  • 举报
回复
<xsl:apply-templates />

匹配当前节点下的所有节点模板.

就是该xml下的所有节点都使用下面的xsl转换规则
Triumph 2005-09-09
  • 打赏
  • 举报
回复
没人再解释一下了吗?
Triumph 2005-08-24
  • 打赏
  • 举报
回复
自己顶
bbstemp 2005-08-21
  • 打赏
  • 举报
回复
学习
Triumph 2005-08-21
  • 打赏
  • 举报
回复
还是不明白,能不能举个例子?
lgq2369 2005-08-20
  • 打赏
  • 举报
回复
应用与当前节点的匹配的模板,如:
当xml的textarea节点后面的那个节点是test,则会引用<xsl:template match="test">
椅子 2005-08-20
  • 打赏
  • 举报
回复
楼上正解
coolstr 2005-08-20
  • 打赏
  • 举报
回复
<xsl:apply-templates />

匹配当前节点下的所有节点模板.
【更新至2025年】2001-2025年上市公司数字化转型年报词频统计(吴非、赵宸宇、甄红线)(300+年报词频统计) 1、时间:2001-2025年 2、来源:上市公司年报 3、参考文献:企业数字化转型与资本市场表现——来自股票流动性的经验证据(吴非) 数字化转型如何影响企业全要素生产率(赵宸宇) 知识产权行政保护与企业数字化转型(甄红线) 4、方法说明:(1)参考吴非老师的做法,对人工智能技术、大数据技术、云计算技术、区块链技术、数字技术运用五个维度76个数字化相关词频进行统计 (2)参考赵宸宇老师的做法,对数字技术应用、互联网商业模式、智能制造、现代信息系统四个维度99个数字化相关词频进行统计 (3)参考甄红线老师的做法,对技术分类、组织赋能、数字化应用等类别下139个数字化相关词频进行统计 5、指标:年份、股票代码、公司简称、行业名称、行业代码、全文-文本总长度、仅中英文-文本总长度、人工智能技术-吴、大数据技术-吴、云计算技术-吴、区块链技术-吴、数字技术运用-吴、数字技术应用-赵、互联网商业模式-赵、智能制造-赵、现代信息系统-赵、技术分类-人工智能技术-甄、技术分类-区块链技术-甄、技术分类-云计算技术-甄、技术分类-大数据技术-甄、组织赋能-人工智能技术-甄、组织赋能-云计算技术-甄、组织赋能-大数据技术-甄、组织赋能-广义数字技术-甄、数字化应用-技术创新-甄、数字化应用-流程创新-甄、数字化应用-业务创新-甄、人工智能、商业智能、图像理解、投资决策辅助系统、智能数据分析、智能机器人、机器学习、深度学习、语义搜索、生物识别技术、人脸识别、语音识别、身份验证、自动驾驶、自然语言处理、大数据、数据挖掘、文本挖掘、数据可视化、异构数据、征信、增强现实、混合现实、虚拟现实、云计算、流计算、图计算、内存计算、多方安全计算、类脑计算、绿色计算、认知计算等300+词频

8,906

社区成员

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

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