0

我正在通过 XSLT 将 XML 文件中的数据转换为 HTML 页面上的表格。(使用 javascript 代码调用 XML 和 XSLT 文件,该代码与客户端页面上 w3schools XSLT 上的代码相同。)我的一个 XML 字段包含一个 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 回答