xml数据的显示中如何让换行,空格显示有效???

蝈蝈俊 2001-06-04 09:56:00
<Issue>
<lt_Content xml:space='preserve'> <![CDATA[本人在使用Delphi开发程序时,使用筛选录入(数据量大),选中数据后要向另一调用表单返回数据,问怎样实现?
条件:1.不使用单独的Data Module,而在调用表单用Table或Query组件;
2.所有表单都使用‘实例’方式打开,在调用数据选取表单时也用实例方式打开;
(注:本人数据选取表单中声明一‘FORM’变量,以存储谁调用,但在开发过程中Compile时总过不去).

在此先行谢过各位专家。
]]></lt_Content>
</Issue>

用<xsl:value-of select="lt_Content"/> 显示时就没法显示出转行。
我把
<Issue>
<lt_Content xml:space='preserve'> <![CDATA[本人在使用Delphi开发程序时,使用筛选录入(数据量大),选中数据后要向另一调用表单返回数据,问怎样实现?<br/>
条件:1.不使用单独的Data Module,而在调用表单用Table或Query组件;<br/>
2.所有表单都使用‘实例’方式打开,在调用数据选取表单时也用实例方式打开;<br/>
(注:本人数据选取表单中声明一‘FORM’变量,以存储谁调用,但在开发过程中Compile时总过不去).<br/>

在此先行谢过各位专家。<br/>
]]></lt_Content>
</Issue>
用<xsl:value-of select="lt_Content"/>也 显示不出转行。


...全文
415 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
hem 2001-06-05
  • 打赏
  • 举报
回复
xslt 也需要 msxml3 以上的解析器。
蝈蝈俊 2001-06-04
  • 打赏
  • 举报
回复
<xsl:output method = "text" />

IE5.0 中还不支持这个东东。


osdx 2001-06-04
  • 打赏
  • 举报
回复
可能是MSXML配的有问题?
蝈蝈俊 2001-06-04
  • 打赏
  • 举报
回复
不行呀,我这里只显示:

Ascending: Descending: Lower-first: Upper-first:

osdx 2001-06-04
  • 打赏
  • 举报
回复
给个例子:

xml file:

<AAA>
<BBB>cc </BBB>
<BBB>ff </BBB>
<BBB>aa </BBB>
<BBB>fff </BBB>
<BBB>FFF </BBB>
<BBB>Aa </BBB>
<BBB>ccCCC </BBB>
</AAA>

xsl file:

<xsl:stylesheet xmlns:xsl = "http://www.w3.org/1999/XSL/Transform" version = "1.0" >
<xsl:output method = "text" />

<xsl:template match = "/" >
<xsl:text >Ascending: </xsl:text>
<xsl:apply-templates select = "//BBB" >
<xsl:sort />
</xsl:apply-templates>
<xsl:text >
Descending: </xsl:text>
<xsl:apply-templates select = "//BBB" >
<xsl:sort order = "descending" />
</xsl:apply-templates>
<xsl:text >
Lower-first: </xsl:text>
<xsl:apply-templates select = "//BBB" >
<xsl:sort case-order = "lower-first" />
</xsl:apply-templates>
<xsl:text >
Upper-first: </xsl:text>
<xsl:apply-templates select = "//BBB" >
<xsl:sort case-order = "upper-first" />
</xsl:apply-templates>
</xsl:template>

<xsl:template match = "BBB" >
<xsl:value-of select = "." />
<xsl:text > </xsl:text>
</xsl:template>
</xsl:stylesheet>

Output file:

Ascending: Aa aa cc ccCCC ff FFF fff
Descending: fff FFF ff ccCCC cc aa Aa
Lower-first: aa Aa cc ccCCC ff fff FFF
Upper-first: Aa aa cc ccCCC ff FFF fff
蝈蝈俊 2001-06-04
  • 打赏
  • 举报
回复
1、 <xsl:text/>; 如何用???
2、 在XSL中强制加入<br>;你根本就没法再通过验证
3、<pre> <xsl:value-of select="lt_Content" /> </pre>不行

karma 2001-06-04
  • 打赏
  • 举报
回复
如果你是指在IE里显示的话,试试这个
<xsl:template match="Issue">
<pre>
<xsl:value-of select="lt_Content" />
</pre>
</xsl:template>
osdx 2001-06-04
  • 打赏
  • 举报
回复
第二种情况,<![CDATA[ *** ]]> 会把***看作纯字符,所以不会有转行。
我的想法:1.用<xsl:text/>;2.在XSL中强制加入<br>;

karma 2001-06-04
  • 打赏
  • 举报
回复
如果你的IE不支持<xsl:output method="text" />的话,你最好去下载MSXML3,把它安装在replace模式
osdx 2001-06-04
  • 打赏
  • 举报
回复
楼上的,你搞错了
<xsl:output method="text" />与
<xsl:text />是两个概念

<xsl:output method = "text" />是指输出的格式,可选text/xml,这里选的是text 文本输出格式
<xsl:text />是指将<xsl:text>***</xsl:text>看作text输出

两者不一样的!

8,909

社区成员

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

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