在HTML表格中显示XML结果

时间:2013-05-25 14:16:29

标签: javascript html xml html-table

我需要显示此网址中的XML数据:http://api.redfoundry.com/RFBase.ashx?type=get&name=b39d11d5-505f-453e-bcfc-9d3b19dd8a61&key=2469F6F56F61976FB51FDEC878E93555

进入HTML表格,该表格将在访问HTML页面时自动加载。

到目前为止,我已经得到以下内容,但它似乎不起作用,它来自W3教程:

<html>
    <body>
        <script>
            if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari   
                xmlhttp = new XMLHttpRequest();
            }
            else {// code for IE6, IE5
                xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
            }
            xmlhttp.open("GET","http://api.redfoundry.com/RFBase.ashx?type=get&name=b39d11d5-505f-453e-bcfc-9d3b19dd8a61&key=2469F6F56F61976FB51FDEC878E93555",false);
            xmlhttp.send();
            xmlDoc = xmlhttp.responseXML; 
            document.write("<table border='1'>");
            var x = xmlDoc.getElementsByTagName("item");
            for (var i=0; i<x.length; i++) { 
                document.write("<tr><td>");
                document.write(x[i].getElementsByTagName("placename")[0].childNodes[0].nodeValue);
                document.write("</td><td>");
                document.write(x[i].getElementsByTagName("description")[0].childNodes[0].nodeValue);
                document.write("</td></tr>");
            }
            document.write("</table>");
        </script>
    </body>
</html>

我想在表格中显示的结果是“商品ID”,地名,说明和地址。

1 个答案:

答案 0 :(得分:1)

检查浏览器的错误控制台,可能是告知访问被拒绝。浏览器中的相同源策略通常会阻止XMLHttpRequest可以从与加载脚本的文档不同的源加载数据。因此,除非服务器设置为支持CORS并且您使用的浏览器也支持,否则您无法从源http://api.redfoundry.com加载带有XMLHttpRequest的文档。