如何使用 Javascript 将 HTML 页面中的 XML 显示为可折叠和可展开的树? [已关闭]

问题描述 投票:0回答:5

如何在 HTML 页面中将 XML 文档显示为可折叠和可展开的树?

我想在 HTML 页面中将 XML 文档显示为打印精美的树结构。我希望能够展开和折叠树枝。例如,当您加载纯 XML 文件时,Firefox 浏览器就会执行此操作。我正在寻找如何使用 JavaScript 在客户端执行此操作。

javascript html xml tree
5个回答
19
投票

使用 JScript 创建 XML 查看器 - Exsead XML Power Scripting

更新:

似乎有比我多年前在上面列出的更好、更易于使用的替代方案:

https://www.jstree.com/

希望他们有帮助。


1
投票

这个库为您完成所有工作:

http://www.openjsan.org/doc/k/ka/kawasaki/XML/ObjTree/0.24/lib/XML/ObjTree.html

var js = (new XML.ObjTree).parse("<?xml version="1.0"?><response><error>0</error></response>");

然后你就有了一个 JavaScript 树,你可以按照你想要的方式显示它。您可能想尝试 YAHOO.widget.TreeView 模块,因为它将创建一个“可展开和可折叠的树”。也就是说,如果您喜欢 YUI 库,否则还有 Dojo 和 Ext 库可以为您创建树视图。


0
投票

http://ajaxian.com/archives/jstree-jquery-based-javascript-tree-component在这里你可以找到一堆带有解决方案的js库


0
投票

如果您使用 ASP.NET 应用程序,则不需要客户端功能。您可以使用以下指定方法:-

//Populate the below varaible value from your business logic
string xmlContent = "<?xml version=\"1.0\"><root><emp><name>name 1</name></emp><emp><name>name 2</name></emp></root>";
Response.Clear();
Response.ContentType = "text/xml"; //Set the contenttype to text/xml so the browser automatically recognises and displays it in the hierarchical structure
Response.Write(xmlContent);
Response.Flush();
Response.End();

0
投票

您好,只需将其添加到页面标题即可。

<?php

header("Content-type: text/xml");

$xml = new SimpleXMLElement('<xml/>');

for ($i = 1; $i <= 8; ++$i) {
    $track = $xml->addChild('track');
    $track->addChild('path', "song$i.mp3");
    $track->addChild('title', "Track $i - Track Title");
}

print($xml->asXML());
?>
© www.soinside.com 2019 - 2024. All rights reserved.