AJAX XML加载无法在Marmalade中使用本地文件

时间:2012-08-08 23:04:47

标签: xml jquery cordova marmalade

尝试使用以下jQuery代码在我的Marmalade Web应用程序(基于PhoneGap)中加载一个简单的XML文件:

$.ajax({
    type: "GET",
    url: "books.xml",
    dataType: "xml",
    success: function(xml) {
        alert("SUCCESS");
    },
    error: function(result) {     
            alert("FAILED : " + result.status + ' ' + result.statusText);  
    }
});

然而,我收到了404错误。该文件与包含上述JavaScript的HTML文件位于同一目录中。我也尝试将“file:///”添加到URL的开头,但无济于事。

搜索了几个小时后,我找不到解决问题的方法。有什么想法吗?

非常感谢您的帮助! -SL

1 个答案:

答案 0 :(得分:0)

我要做的第一件事就是把jQuery从等式中拿出来,然后尝试一下普通的AJAX调用:

var request = new XMLHttpRequest();
request.open("GET", "books.xml", true);
request.onreadystatechange = function() {
    if (request.readyState == 4) {
        if (request.status == 200 || request.status == 0) {
            alert("SUCCESS");
            var books = request.responseXML;
        }
    }
}
request.send();

如果books.xml与您的HTML文件位于同一目录中,那么