开发者

how jquery parse xml from another xml?

开发者 https://www.devze.com 2022-12-23 19:25 出处:网络
please help me to parse xml from another xml... i have this xml named browser.xml <tree> <root name=\"SA\" hidden=\"yes\">

please help me to parse xml from another xml...

i have this xml named browser.xml

<tree>
<root name="SA" hidden="yes">
<folder name="Diagram">
<folder name="Activity" refreshURL="diagram_activity.xml"></folder>
<folder name="Business Process" refreshURL="diagram_business_process.xml"></folder>
</folder>

<folder name="Other">
<folder name="SA Reports" refreshURL="other_开发者_JAVA百科na.xml"></folder>
</folder>
</root>
</tree>

then this is the diagram_activity.xml

<treeFragment>
<folder name="Penjualan erna">
<link url="businessprocessdiagram_processdiagramreport_2162.htm" target="main">
</link>

<leaf name="Process Diagram Report">
<link url="businessprocessdiagram_processdiagramreport_2162.htm" target="main">
</link>
</leaf>
</folder>
</treeFragment>

and i still have so many other xml that linked from browser.xml

This is how i parse browse.xml

<html>
<head>
<title>tes xml</title>
<script language="javascript" src="js/lib/jquery.js"></script>
<script language="javascript">
 $(document).ready(getxml('browser.xml',parsedataxml))

 function getxml(namafile,parsefunction){
  $.ajax({
   type: 'GET',
   url: namafile,
   dataType: 'xml',
   success: parsefunction
   });
  }

 function parsedataxml(xml){
    var str = '';
    $(xml).find('folder').each(
    function(){
     var name = $(this).attr('name');
     var linkurl = $(this).attr('refreshURL');
     if (typeof linkurl=='undefined'){
      str += 'folder : '+name+'<br/>'; 
      }
     else {
      str += '&nbsp subfolder : '+name+'<br/>&nbsp link :'+linkurl+'<br>';
/*      function(){
       $.ajax({
        type: 'GET',
        url: linkurl,
        dataType: 'xml',
        success: parseleafxml
        });
       }
*/      }
     });
    $('#Result').html(str);
    }
 function parseleafxml(xml){
    var arrdata= new Array();
    var i = 0;
    $(xml).find('folder').each(
    function(){
     var leafname = $(this).attr('name');
     var leaflink = leafname.text().find('link');
     var leafurl = leaflink.attr('url');
     var leaftarget = leaflink.attr('attr');
     //arrdata[i]= {leafname:leafname,leaflink:leafurl,leaftarget:leaftarget};
     //i +=1;


     });
  }

</script>
</head>
<body>
 <div id="Result" style="border:1px solid #006"></div>
</body>
</html>

how do i parse the diagram_activity?? i still couldn't have the way... please somebody help..

note : the comment code is my failed way to parse, maybe somebody could fix it but if you could give me another solution, please welcome


$(function() {

    $.ajax({
        type: "GET",
        url: "first.xml",
        dataType: "xml",
        success: parseXml
    });

    function parseXml(xml) {

        $(xml).find('tree').each(function() {

            var url = $(this).find('url').text();

            if (url != '') {

                $.ajax({
                    type: "GET",
                    url: url,
                    dataType: "xml",
                    success: function parseSecondXML(xml) {

                        $(xml).find('tree').each(function() {

                            var object = $(this).find('object').text();

                            alert(object);

                        });
                    }
                });

            }

        });
    }

});

first.xml :

<?xml version="1.0" encoding="utf-8" ?>

<tree>
    <url>second.xml</url>
</tree>

second.xml :

<?xml version="1.0" encoding="utf-8" ?>

<tree>
    <object>Bingo</object>
</tree>

Alert outputs : Bingo!

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号