在HTML页面中显示XML内容

时间:2011-09-22 18:26:51

标签: jquery html xml

如何在同一页面中显示XML和其他类型的数据?

    <?xml version="1.0" encoding="ISO-8859-1"?>
<catalog>
    <cd>
        <title>Empire Burlesque</title>
        <artist>Bob Dylan</artist>
        <country>USA</country>
        <country>Columbia</country>
        <price>10.90</price>
        <year>1985</year>
    </cd>
</catalog>

上面的XML应该按格式显示。另外,我想在我的页面中显示HTML表格和其他内容。怎么做到这一点?

  1. 我确实在STRING中获取XML而不是通过文件。
  2. 我不想解析它
  3. 我想显示(就是这样)
  4. 如果你说XSLT(请举例)
  5. 我正在考虑使用Jquery插件(任何示例?)

6 个答案:

答案 0 :(得分:79)

简单的解决方案是嵌入<textarea>元素内部,这将保留格式和尖括号。我还删除了style="border:none;"的边框,这使得textarea不可见。

以下是一个示例:http://jsfiddle.net/y9fqf/1/

答案 1 :(得分:30)

您可以使用旧的<xmp>代码。我不了解浏览器支持,但它仍然有用。

<HTML>

your code/tables

<xmp>
    <catalog>
        <cd>
            <title>Empire Burlesque</title>
            <artist>Bob Dylan</artist>
            <country>USA</country>
            <country>Columbia</country>
            <price>10.90</price>
            <year>1985</year>
        </cd>
    </catalog>
</xmp>

输出:

your code/tables
<catalog>
    <cd>
        <title>Empire Burlesque</title>
        <artist>Bob Dylan</artist>
        <country>USA</country>
        <country>Columbia</country>
        <price>10.90</price>
        <year>1985</year>
    </cd>
</catalog>

答案 2 :(得分:14)

如果您将内容视为 text ,而不是 HTML ,那么DOM操作应该会导致数据被正确编码。以下是你在jQuery中的表现:

$('#container').text(xmlString);

以下是使用标准DOM方法的方法:

document.getElementById('container')
        .appendChild(document.createTextNode(xmlString));

如果您通过服务器端脚本将XML放在HTML中,那么必然会有编码功能允许您这样做(如果您添加服务器端技术,我们可以为您提供具体的示例你怎么做的。)

答案 3 :(得分:13)

答案 4 :(得分:1)

2017年更新我猜。 textarea使用Spring,Bootstrap和其他一些东西为我工作得很好。将SOAP有效负载存储在DB中,由Spring读取并通过Spring-MVC推送。 xmp根本不起作用。

答案 5 :(得分:0)

在 HTML 页面上显示 XML 数据的一个简单解决方案是: 去这个website

粘贴您的代码并生成您可以在 HTMLenter image description here 中的预标记中使用的 XML 代码以进行显示。