Link to home
Start Free TrialLog in
Avatar of egoselfaxis
egoselfaxis

asked on

Need to parse sitemap.xml file using Javascript, and to display as html

I have the following sitemap XML file:

http://docksidemarket.3dcartstores.com/sitemap.xml

I need to find a way to parse this XML file using javascript, and to display it as HTML.

Is this possible to achieve?  If so, how?  

Ideally, I'd like to do it in such a way that I don't need to add any javascript code to the HEAD section of the page (and instead have all of the javascript code be contained somewhere within the opening and closing BODY tags).

Please advise.

Thanks!
- Yvan
Avatar of bartvd
bartvd
Flag of Netherlands image

Yes, it is possible.
This is how you parse xml via javascript: http://www.w3schools.com/xml/xml_parser.asp

Here is an example:
http://www.w3schools.com/xml/tryit.asp?filename=tryxml_parsertest
Avatar of leakim971
> to display it as HTML

could you provide an example for example for the first one :
<url>
<loc>http://docksidemarket.3dcartstores.com/</loc>
<lastmod>2011-09-21</lastmod>
<changefreq>daily</changefreq>
<priority>1</priority>
</url>

Open in new window


are you ok with the follwing :
<tr><td>http://docksidemarket.3dcartstores.com</td><td>2011-09-21</td><td>daily</td></tr>

Open in new window

Avatar of Proculopsis
Proculopsis


Use a style sheet to automatically transform your xml, as below:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head>
<title>http://www.experts-exchange.com/Programming/Languages/Scripting/JavaScript/Q_27320729.html</title>
<script type="text/javascript" src="http://filedb.experts-exchange.com/incoming/2011/05_w20/458595/jquery-1.5.2.min.js"></script>
<script type="text/javascript">

jQuery(document).ready( function() {

  var xmlSource = $("#xml-source").val();
  var xslSource = $("#xml-style-sheet").val();

  var xml = parser( xmlSource );
  var xsl = parser( xslSource );
  var transform = xml.transformNode( xsl );
  $("#transform").html( transform );

});

function parser( xml )
{
  var result = new ActiveXObject( "MSXML.DOMDocument" );
  result.async = false;
  result.loadXML( xml );
  return result;
}

</script>

</head> 
<body> 

<div id="transform" class="main"></div>

<fieldset style="padding: 16px; width: 60%"><legend>XSL</legend>
<textarea id="xml-style-sheet" style="width: 100%; height: 200px; background-color: beige;">

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
  <ul>
      <xsl:for-each select="urlset/url">
        <li>
          <a href="{loc}"><xsl:value-of select="loc" /></a>
        </li>
      </xsl:for-each>
  </ul>
</xsl:template>
</xsl:stylesheet>

</textarea>
</fieldset>

<fieldset style="padding: 16px; width: 60%"><legend>XML</legend>
<textarea id="xml-source" style="width: 100%; height: 200px; background-color: beige;">

<?xml version="1.0" encoding="ISO-8859-1"?>
<urlset><url><loc>http://docksidemarket.3dcartstores.com/</loc><lastmod>2011-09-21</lastmod><changefreq>daily</changefreq><priority>1</priority></url><url><loc>http://docksidemarket.3dcartstores.com/Cakes_c_1.html</loc><lastmod>2011-09-21</lastmod><changefreq>weekly</changefreq><priority>0.8</priority></url><url><loc>http://docksidemarket.3dcartstores.com/Cookies-Brownies_c_7.html</loc><lastmod>2011-09-21</lastmod><changefreq>weekly</changefreq><priority>0.8</priority></url><url><loc>http://docksidemarket.3dcartstores.com/Island-Assortments_c_8.html</loc><lastmod>2011-09-21</lastmod><changefreq>weekly</changefreq><priority>0.8</priority></url><url><loc>http://docksidemarket.3dcartstores.com/Salsa_c_9.html</loc><lastmod>2011-09-21</lastmod><changefreq>weekly</changefreq><priority>0.8</priority></url><url><loc>http://docksidemarket.3dcartstores.com/Sauces_c_10.html</loc><lastmod>2011-09-21</lastmod><changefreq>weekly</changefreq><priority>0.8</priority></url><url><loc>http://docksidemarket.3dcartstores.com/Hot-Sauces_c_11.html</loc><lastmod>2011-09-21</lastmod><changefreq>weekly</changefreq><priority>0.8</priority></url><url><loc>http://docksidemarket.3dcartstores.com/Reel-Heat_c_12.html</loc><lastmod>2011-09-21</lastmod><changefreq>weekly</changefreq><priority>0.8</priority></url><url><loc>http://docksidemarket.3dcartstores.com/Gift-Shop_c_13.html</loc><lastmod>2011-09-21</lastmod><changefreq>weekly</changefreq><priority>0.8</priority></url><url><loc>http://docksidemarket.3dcartstores.com/Conch-Chowder_p_9.html</loc><lastmod>2011-09-21</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url><url><loc>http://docksidemarket.3dcartstores.com/Island-Jerk-Meatloaf_p_10.html</loc><lastmod>2011-09-21</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url><url><loc>http://docksidemarket.3dcartstores.com/Jicama-and-Corn-Fruit-Salad_p_11.html</loc><lastmod>2011-09-21</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url><url><loc>http://docksidemarket.3dcartstores.com/Tomatillo-and-Swiss-Cheese-Enchiladas_p_12.html</loc><lastmod>2011-09-21</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url><url><loc>http://docksidemarket.3dcartstores.com/Key-Lime-Cheesecake_p_13.html</loc><lastmod>2011-09-21</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url><url><loc>http://docksidemarket.3dcartstores.com/Seafood-Bisque_p_14.html</loc><lastmod>2011-09-21</lastmod><changefreq>monthly</changefreq><priority>0.5</priority></url><url><loc>http://docksidemarket.3dcartstores.com/About-Us_ep_7.html</loc><lastmod>2011-09-21</lastmod><changefreq>monthly</changefreq><priority>0.3</priority></url><url><loc>http://docksidemarket.3dcartstores.com/In-Your-Neighborhood_ep_40.html</loc><lastmod>2011-09-21</lastmod><changefreq>monthly</changefreq><priority>0.3</priority></url><url><loc>http://docksidemarket.3dcartstores.com/Serving-Suggestions_ep_42.html</loc><lastmod>2011-09-21</lastmod><changefreq>monthly</changefreq><priority>0.3</priority></url><url><loc>http://docksidemarket.3dcartstores.com/Storage_ep_43.html</loc><lastmod>2011-09-21</lastmod><changefreq>monthly</changefreq><priority>0.3</priority></url><url><loc>http://docksidemarket.3dcartstores.com/Wholesale_ep_45.html</loc><lastmod>2011-09-21</lastmod><changefreq>monthly</changefreq><priority>0.3</priority></url></urlset>
</textarea>
</fieldset>

</body>
</html>

Open in new window

Avatar of egoselfaxis

ASKER

leakim971 - yes -- I am ok with the table rows/cells.  All I need from the xml file are the urls, really.

Thanks,
- Yvan

the XML is hosted on a different website than your page?
No it is not - it is on the same site.

- Yvan
ASKER CERTIFIED SOLUTION
Avatar of leakim971
leakim971
Flag of Guadeloupe image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
That worked for me - thanks!

- Yvan