www.webdeveloper.com
Results 1 to 3 of 3

Thread: reading XML file

Hybrid View

  1. #1
    Join Date
    Jul 2009
    Posts
    3

    reading XML file

    How do I traverse an XML file shown below and create an HMTL page with output as:

    I want the hyperlink the way I have added the link to the output. It is concatenation between string "sapwd2.abc.com" from 'Mapping' tag and string from 'link' tag

    All XML files are stored locally.

    ....OUTPUT....
    • My Time
    • Trend Analysis
    o Previous Weeks Data - need to work on
    o Individual Trend Analysis…..


    Code:
    <Reports>
    	<Mapping>
    		<map sys="CD2" server="sapwd2.abc.com"/>
    	</Mapping>
    	<RptGrp name="My Time">
    		<report name="Time Recording" link="/sap/bw/BEx?template_id=ZIC_TIME_RECORD_SNAP_DATA"/>
    	</RptGrp>
    	<RptGrp name="Trend Analysis">
    		<report name="Previous Weeks Data - need to work on" link="/sap/bw/BEx?template_id=ZPREV_WEEK_EMP_MNGR"/>
    		<report name="Individual Trend Analysis" link="/sap/bw/BEx?template_id=ZEMP_QUEUE_TREND"/>
    	</RptGrp>
    </Reports>

  2. #2
    Join Date
    Jul 2009
    Posts
    45
    Search javascript xml parsing
    Here's one on it.
    http://marcgrabanski.com/article/jqu...rsing-xml-easy

    Your format look a little bit hard though.
    But basically what you have to do is..
    -Get the tags
    -if the tag has a name then add it to the ul list and check to see if it has any children.
    -If the children has names, then add the kids a ul list within side the current tag's ul list.
    -if the current child has a link, then turn into a link by using the following format.
    "<a href=' " + currChild.link + " '> " + currChild.name + "</a>"

    And that's it.
    Help me out by telling others about my jquery plugin.
    http://code.google.com/p/jquizme/

    Learn Javascript, not java, here. Take a 3 days.
    http://www.w3schools.com/JS/default.asp

  3. #3
    Join Date
    Jul 2009
    Posts
    3

    working code

    Thanks for the help...I tried with simpler way.
    Code:
    <!--JavaScript code to Parse xml file and generate links-->
    <html>
    <head>
    <script type="text/javascript" src="loadxmldoc.js">
    </script>
    </head>
    <body>
    <script type="text/javascript">
    xmlDoc=loadXMLDoc("AllReports.xml");
    xmlObj = xmlDoc.documentElement;
    
    map = xmlDoc.getElementsByTagName('map')[0].attributes;
    server = map.getNamedItem("server").nodeValue;
    
    var objNodesList = xmlObj.getElementsByTagName("RptGrp");
    
    document.write('<ul>');
    for(var i=0;i<objNodesList.length;i++)
    {
    	document.write('<li>');
    	txt=objNodesList[i].getAttribute("name");
    	document.write('<b>'+txt+': </b>');
    	var list = objNodesList[i].childNodes;
    
    	for(var j=0; j<objNodesList[i].childNodes.length; j++)
    	{
    		txt=objNodesList[i].childNodes[j].getAttribute("name");
    		link=objNodesList[i].childNodes[j].getAttribute("link");
    		document.write('<ul><li><A HREF="http://'+server+link+'">'+txt+'</A></ul></li>');
    	}
    }
    </script>
    </body>
    </html>
    ///////////////loadxmldoc.js///////////////

    Code:
    function loadXMLDoc(dname)
    {
    var xmlDoc;
    if (window.XMLHttpRequest)
      {
      xmlDoc=new window.XMLHttpRequest();
      xmlDoc.open("GET",dname,false);
      xmlDoc.send("");
      return xmlDoc.responseXML;
      }
    // IE 5 and IE 6
    else if (ActiveXObject("Microsoft.XMLDOM"))
      {
      xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
      xmlDoc.async=false;
      xmlDoc.load(dname);
      return xmlDoc;
      }
    alert("Error loading document");
    return null;
    }

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles