读书人

关于jquery解析xml生成数据树的有关问

发布时间: 2012-06-19 14:45:20 作者: rapoo

关于jquery解析xml生成数据树的问题
xml文件

XML code
<?xml version="1.0"?><msglist>    <folder>        <name>folder1</name>        <file>file1</file>        <folder1>            <name>folder1.1</name>            <file>file1.1</file>        </folder1>    </folder>    <folder>        <name>folder2</name>        <file>file2.1</file>    </folder>    <folder>        <name>folder3</name>    </folder>    <folder>        <name>folder4</name>        <file>file4.1</file>        <file>file4.2</file>    </folder></msglist>

html代码
HTML code
<html>       <head>            <script type="text/javascript" src="jquery.js">           </script>           <script>           $.ajax({            type: "POST", // 默认:GET 请求方式:[POST/GET]            dataType: "xml", //默认["xml"/"html"] 返回数据类型:["xml" / "html" / "script" / "json" / "jsonp"]            url: "guestbook.xml", // 默认当前地址,发送请求的地址            data: { key: "value" }, // 发送到服务器的数据            error: function(xml) { alert('Error loading XML document' + xml); }, // 请求失败时调用            success: function(xml) { // 请求成功后回调函数 参数:服务器返回数据,数据格式.                $("#dictionary").empty();                // 用Jquery处理xml数据                $(xml).find('msglist').each(function() {                    //var folder = $(this).find('folder > name').text();                    //var file = $(this).find('folder > file').text();                    //$('#dictionary').append('<li>' + folder + '</li>');                });            }        })        </script>       </head>       <body>           <div id = dictionary>        </div>     </body>   </html>

怎么才能根据xml生成树呢?
比如生成下面的代码
HTML code
<li><span class="folder">folder1</span>    <ul>        <li><span class="file">file1</span></li>        <ul>            <li><span class="folder">folder1.1</span>                <ul>                    <li><span class="file">file1.1</span></li>                </ul>            </li>        </ul>    </ul></li><li><span class="folder">folder2</span>    <ul>        <li><span class="file">file2.1</span></li>    </ul></li><li><span class="folder">folder3</span></li><li><span class="file">File 4</span></li>······

请各位高手帮忙看一下,要有更好的办法或者例子也跟小弟看下,谢谢了

[解决办法]
我不知道你的是什么意思,
是不是想把XML串生成DOM结构?

jQuery有个插件,可以办到

http://outwestmedia.com/jquery-plugins/xmldom/

你去看看?

读书人网 >JavaScript

热点推荐