HTML:所有XML数据值在格式化文档下面显示为未格式化
非常新手(不到一周) 我有一个从Altova StyleVision创建的样式表,我对它进行了修改,因为它在StyleVision之外的浏览器中不起作用。关于“变量或参数‘altova:table’在同一范围内重复”的内容 不管怎样,它现在运行得很好,除了一件事。在格式化视图的末尾,所有XML数据值都会以未格式化的形式再次重复,只是在一个连续的行中输出 在这里发布之前,我已经搜索了一个又一个答案,但似乎没有人遇到过这个问题 代码都在HTML标记中,如下所示:HTML:所有XML数据值在格式化文档下面显示为未格式化,html,xml,xslt-1.0,Html,Xml,Xslt 1.0,非常新手(不到一周) 我有一个从Altova StyleVision创建的样式表,我对它进行了修改,因为它在StyleVision之外的浏览器中不起作用。关于“变量或参数‘altova:table’在同一范围内重复”的内容 不管怎样,它现在运行得很好,除了一件事。在格式化视图的末尾,所有XML数据值都会以未格式化的形式再次重复,只是在一个连续的行中输出 在这里发布之前,我已经搜索了一个又一个答案,但似乎没有人遇到过这个问题 代码都在HTML标记中,如下所示: <BODY>
<BODY>
<span style="font-family:Arial; font-size:18pt; font-weight:bold; vertical-align:middle; ">
<xsl:text>ENGINEERING CHANGE ORDER</xsl:text>
</span>
.............
<br/>
<span style="font-family:Arial; font-size:10pt; font-weight:bold; ">
<xsl:text>Summary:</xsl:text>
</span>
<pre>
<xsl:for-each select="Description">
<span style="font-family:Arial; font-size:10pt; ">
<xsl:apply-templates/>
</span>
</xsl:for-each>
</pre>
<hr/>
</xsl:for-each>
<xsl:apply-templates/>
</BODY>
工程变更通知单
.............
总结:
不太清楚您在这里想要实现什么。重现您的问题,我认为您指的是一个连续字符串的输出
如果是这样,您将使用HTML文档中不存在的名称空间和属性。一种更常见的方法是创建实际的样式表。一个Sample.xsl文件。保持与您提供的格式相对相同。这是一个XSL文件,您可以用DATA.xml文件解析它
<?xml version="1.0" encoding="UTF-8"?>
<profile>
<description>
<value>hi</value>
</description>
<description>
<value>world</value>
</description>
<description>
<value>i mean</value>
</description>
<description>
<value>hello</value>
</description>
<description>
<value>world</value>
</description>
</profile>
工程变更通知单
.............
总结:
]]>
My sample DATA.xml包含:
你好
世界
我是说
你好
世界
如果您使用的是基于Mac或Linux的操作系统。您可以打开终端并键入
xsltproc sample.xsl DATA.xml>index.html
。如果您使用的是Windows机器,请转到此处:下载一份xsltproc副本,以便可以解析该内容
如果您有创建的example.xml的副本,并且希望使用XSL显示数据。这是一个很好的方法。尤其是当XML文件中有大量内容时。这看起来像XSLT。它应该通过XSLT处理器提供。您已经创建了“怪物”。它不再是纯HTML,也不再是XSLT。每件带有“xsl:”的东西都是XSLT,不会被浏览器“处理”。我发现我有很多东西要学。让我特别困惑的是,我基本上被告知这不应该按原样工作,但XML数据值在Internet Explorer和Firefox中显示得很好。只是重复xml数据值,文档末尾没有样式表格式。泰勒,你已经提供了最详细的信息,谢谢。我需要做的是回到起点,学习更多关于XSLT、HTML和解析器等的知识。我希望找到一个快捷方式解决问题。不幸的是,生活中很多事情都没有快捷方式解决。如果重复使用XML数据值,很可能是循环出错;和。应用模板和for基本上都是循环。您的嵌套循环可能就是创建重复值的原因。摆弄代码,学习它的唯一方法实际上就是玩它,我以XML/XSL编码为生,但还有很多东西需要学习。如果你需要一些帮助,你可以在这篇文章中添加更多内容。总是乐于助人。顺便说一句,XML数据几乎总是显示得很好,因为它只是原始数据。您的XSL使其“时尚”。把XML看作只是数据。XSL作为HTML和CSS的样式组合,XSLT作为XML和XSL到您想要的任何格式的转换。好的开始是从学校开始的。更深入的研究需要一本书,或者只是在网上查找其他人是如何编写代码的。如果您可以选择获取一些XML和XSL代码,摆弄它将有助于学习过程。与其他许多语言相比,它实际上是一种相当简单的样式语言。简历中的精彩补充,竖起大拇指!
<?xml version="1.0" encoding="UTF-8"?>
<profile>
<description>
<value>hi</value>
</description>
<description>
<value>world</value>
</description>
<description>
<value>i mean</value>
</description>
<description>
<value>hello</value>
</description>
<description>
<value>world</value>
</description>
</profile>