我在简单的xml文档中有以下代码
<?xml version="1.0"?>
<sample>
<link xml:link="simple" href="http://www.google.com"> Google page </link>
</sample>
但这只是浏览器中的标签而不管它是什么浏览器
这是我浏览器上显示的内容:
<sample><link xml:link="simple" href="http://www.google.com"> Google page </link></sample>
请让我知道为什么超链接没有出现在浏览器上而不是标签上。我尝试了很多选择,但似乎我错过了一些非常基本的东西 感谢
答案 0 :(得分:0)
您无法使用HTML行为打开XML文件。为此,您需要使用XSLT将XML文件转换为HTML文件。以下代码捕获将帮助您使用XSLT将XML文件转换为HTML文件:
应用以下XSLT:
<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns="http://www.w3.org/TR/REC-html40">
<xsl:output method="html"/>
<xsl:template match="/">
<HTML>
<HEAD>
<TITLE>Sample HTML</TITLE>
</HEAD>
<BODY>
<xsl:apply-templates/>
</BODY>
</HTML>
</xsl:template>
<xsl:template match="sample/link">
<A TARGET="_blank">
<xsl:attribute name="HREF">
<xsl:value-of select="@href"/>
</xsl:attribute>
<xsl:apply-templates/>
</A>
</xsl:template>
XML文件是这样的:
<sample>
<link xml:link="simple" href="http://www.google.com"> Google page </link>
</sample>
将XML文件转换为.HTML文件的C#函数是:
public void transformToHtml()
{
XslCompiledTransform transform = new XslCompiledTransform();
transform.Load("html.xslt");
transform.Transform("htmlArtical.xml", "toHTML.html");
}
输出.HTML文件是这样的:
<HTML xmlns="http://www.w3.org/TR/REC-html40">
<HEAD>
<TITLE>Sample HTML</TITLE>
</HEAD>
<BODY>
<A TARGET="_blank" HREF="http://www.google.com"> Google page </A>
</BODY>
</HTML>
在浏览器中打开此.HTML文件,您将获得“Google页面”文字的链接。
我希望这会对你有所帮助。