Como mostrar o XML numa página HTML como uma árvore flexível e expansível usando o Javascript? [fechado]

Como mostrar um documento XML numa página HTML como uma árvore flexível e expansível?

Eu gostaria de mostrar um documento XML dentro de uma página HTML como uma estrutura em árvore bem impressa. Gostaria de ser capaz de expandir e derrubar ramos de árvores. Por exemplo, o navegador Firefox faz isto quando carrega um ficheiro XML simples. Estou olhando como fazer isso no lado do cliente com JavaScript.

Author: Juha Syrjälä, 2009-09-02

5 answers

Criar um visualizador de XML com programação de potência em XML JScript - Exsead

Mostrar os ficheiros XML com Javascript

Actualização:

Parece haver uma alternativa melhor e mais fácil de usar do que a que listei há muitos anos:

Https://www.jstree.com/

Espero que ajudem.
 15
Author: Tarik, 2017-05-16 15:55:07
Esta biblioteca faz todo o trabalho por ti.

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>");

Então você tem uma árvore de JavaScript e você pode mostrá-la como quiser. Talvez queiras experimentar o YAHOO.elemento.Módulo TreeView para isso irá criar uma "árvore expansível e desmontável"."Isto é, se você gosta da biblioteca de YUI, de outro modo há bibliotecas Dojo e Extt que podem criar uma árvore para você.

 1
Author: jhuni, 2009-09-03 06:13:57

Se estiver a utilizar ASP.NET aplicação então não há necessidade de funcionalidade do lado do cliente. Pode utilizar o método abaixo especificado: -

//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
Author: Anand Uchagawkar, 2011-01-05 08:07:48
Adicione isto ao cabeçalho da sua página.
<?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());
?>
 0
Author: Louwki, 2012-05-15 11:58:40