【问题标题】:I want to link my XML file to my HTML page我想将我的 XML 文件链接到我的 HTML 页面
【发布时间】:2011-01-14 20:32:31
【问题描述】:

我创建了一个 XML 文件,我希望它显示在我创建的 HTML 页面中。谁能告诉我该怎么做。

<?xml version="1.0"?>
<Family>
<Mom>Alison</Mom>
<age>44</age>
<son>Ian</son>
<age>8</age>
<son>Seth</son>
</Family>

我想从我的 html 页面中阅读该内容

【问题讨论】:

  • 我不明白。请显示更多详细信息

标签: html xml


【解决方案1】:

您可以使用XSLT - 用于转换 XML 文档的语言。也许这会满足您的需求。

我对您提供的 XML 进行了一些修改,因为我认为它的结构不好。所以如果我们有这样的文件:

<?xml version="1.0"?>
<?xml-stylesheet href="bla.xsl" type="text/xsl" ?>
<family>
   <person>
      <role>Mom</role>
      <name>Alison</name>
      <age>44</age>
   </person>
   <person>
      <role>Father</role>
      <name>Ben</name>
      <age>45</age>
   </person>
   <person>
      <role>Son</role>
      <name>Ian</name>
      <age>8</age>
   </person>
</family>

XSLT 文件如下所示:

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
  <html>
  <body>
  <h2>Family</h2>
    <table border="1">
      <tr bgcolor="#9acd32">
    <th>Role</th>
        <th>Name</th>
        <th>Age</th>
      </tr>
      <xsl:for-each select="family/person">
          <tr>
        <td><xsl:value-of select="role"/></td>
        <td><xsl:value-of select="name"/></td>
        <td><xsl:value-of select="age"/></td>
          </tr>
      </xsl:for-each>
    </table>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>

【讨论】:

  • +1 激励您用模板替换 for-each ;-)
  • 我的理解应该是文件名相同,只是扩展名不同
【解决方案2】:

a) 只需链接您的 Xml 文件

您可以使用服务器端包含从 Html 页面链接到您的 Xml 文件。

如果您的网络服务器配置为允许此功能(出于安全原因,通常禁用此功能)您需要做的就是将您的 Html 页面重命名为 .shtml 并添加服务器端 include 命令。

foo.shtml

<html>
    <head/>
    <body>
    <!--#include file="bar.xml" -->
    </body>
</html>

bar.xml

<?xml version="1.0"?>
<Family>
    <Mom>Alison</Mom>
    <age>44</age>
    <son>Ian</son>
    <age>8</age>
    <son>Seth</son>
</Family>

这将在您的浏览器中显示文本Alison 44 Ian 8 Seth


b) 将您的 Xml 文件呈现为 Html

如果您想将完整的 Xml 文件呈现为 Html 页面,wenuxas 有正确的答案。


c) 将您的 Xml 文件嵌入到您的 Html 页面中

如果您的 Xml 文档仅代表最终页面的一部分,Ajax 可能就是您要查找的内容。

【讨论】:

    【解决方案3】:

    如果您只想显示文件中的 XML 内容,您可以搜索并替换所有括号( 变为 >),然后将结果粘贴在

     和  之间pre> 标签。
        

    【讨论】:

      【解决方案4】:

      我想说最常见的方法是使用 ASP.NET 等服务器端开发平台读取 XML 文件,然后将其格式化为页面标记。

      如果有更直接的方式在 HTML 页面中包含 XML 内容,我不熟悉。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-02-11
        • 2021-01-04
        • 2017-08-10
        • 2018-03-18
        • 2021-03-22
        • 2022-11-21
        相关资源
        最近更新 更多