使用JQuery解析XML无法正常工作

时间:2014-02-19 02:12:56

标签: jquery xml xml-parsing

我有以下XML文件,我试图解析...

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

<root>
    <post>
        <heading>Test Post, Please Ignore</heading>
    </post>
</root>

我正在使用的JQuery ......

<script>
    $(document).ready(function(){
        $.ajax({
            type:"GET",
            url:"postList.xml",
            dataType:"xml",
            success:function(xml) {
                $(xml).find("post").each(function() {
                    var pTitle = $(this).find("heading").text();

                    $("#output").append("<p>" + pTitle + "</p>");
                });
            },error: function() {
                alert("An error occurred while processing XML file.");
            }
        });
    });
</script>

每次我在broswer中预览我的网站时都会抛出一个错误(写入JQuery的错误)。我已经在IE,Firefox和Chrome中尝试了它,并使用了W3C的XML Validator来确保这一切都在检查中,但它仍然无法正常工作。
从我可以告诉它应该工作,但事实并非如此。相反,它每次都会抛出错误,而我的页面留空<div id="output">。任何帮助将不胜感激!

编辑:我将XML文件移动到与html文件相同的文件夹,并更新了网址,使其具有正确的地址。它现在似乎在Firefox中工作,但仍然在IE和Chrome中引发错误......

1 个答案:

答案 0 :(得分:1)

事实证明,如果文件是从本地硬盘驱动器(file://协议)加载的,则是同源策略违规的问题。

由于项目应该部署在Web服务器中,因此建议的修复方法是使用本地Web服务器来托管文件,以便纠正相同的原始策略违规行为。