0

シンプルな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>

タグではなくハイパーリンクがブラウザーに表示されない理由を教えてください。多くのオプションを試しましたが、ここで非常に基本的なものが欠けているようです ありがとう

4

1 に答える 1

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 ページ」テキストにリンクが表示されます。

これがお役に立てば幸いです。

于 2012-08-03T05:28:10.093 に答える