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.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:
Espero que ajudem.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ê.
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();
<?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());
?>