0

HTML ページにテーブルとして表示される XSLT を介して XML ファイルからデータを変換しています。(XML および XSLT ファイルは、Clientページの w3schools XSLT にあるものと同じ JavaScript コードを使用して呼び出されます。) 私の XML フィールドの 1 つに URL が含まれています。私の変換はそのフィールドの href 属性を作成しますが、XML ファイルから URL を送信する代わりに、テーブルが存在する HTML ページの URL に置き換えます。

私のXMLは次のようになります。

<database>
<Table>
<Title>Title</Title>
<URL value="www.link.com">Watch this video</URL>
</table>        

私の XSLT は次のようになります。

<table>
<tr>
<th>Title</th>
<th>URL</th>
</tr>
<xsl:for-each select="database/table">
<tr>
<td><xsl:value-of select="Title"/></td>
<td>
<a>
<xsl:attribute name="href">
<xsl:value-of select="URL/@VALUE"/>
</xsl:attribute>
<xsl:value-of select="URL"/>
</a>
</td>
</tr>
</xsl:for-each>
</table>

しかし、HTML ページでは、「このビデオを見る」リンクは「www.link.com」ではなく「www.HTMLpage.com」です。XSL 変換を XML ドキュメントに追加してブラウザで開くと、同じことが起こります。リンクは、必要な外部の場所ではなく、そのページのアドレスに移動します。

4

1 に答える 1

0

XPath では大文字と小文字が区別されます。

置換:

<xsl:value-of select="URL/@VALUE"/>

:

<xsl:value-of select="URL/@value"/>

修正された変換の結果を、提供された XML ドキュメント (同様の修正と終了タグも必要です) に適用すると、必要な結果が生成されます

<table>
   <tr>
      <th>Title</th>
      <th>URL</th>
   </tr>
   <tr>
      <td>Title</td>
      <td>
         <a href="www.link.com">Watch this video</a>
      </td>
   </tr>
</table>
于 2012-12-10T05:14:19.383 に答える