Jquery Ajax问题

时间:2011-06-08 08:41:49

标签: xml ajax jquery

我遇到了问题,我希望有人能指出我正确的方向。我正在尝试使用JQuery的.ajax函数解析xml文件,这是代码:

此代码位于test.js文件中

$(document).ready(function() {
    $.ajax({
        type: 'GET',
        url: 'test.xml',
        dataType: 'xml',
        success: testIt
    });
 });

 function testIt(xml) {
   alert("Test");
 }

这只是我正在运行的测试,在执行ajax请求后它应该调用testIt。问题是它没有。由于这是一个测试,html,js和xml文件都在我桌面上的同一目录中,即/Users/Chris/Desktop/Development

如果我添加complete: testIt,它会进入该功能。 test.xml已经过检查并且有效。

我目前正在使用Safari 5.0.5进行测试,但我也在Firefox中进行了测试,其行为相同。这可能是$.ajax的怪癖,也可能是我做错了。

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

浏览Firebug或Chrome中的内置开发者工具,仔细查看ajax调用的请求和结果。如果success未运行,但complete没有运行,则可能由于某种原因(有可能因为answer中列出的详细信息细节而导致调用返回错误状态)

我在我的机器上尝试了您的设置,并将error: function() { alert("didn't work..."); }添加到了ajax选项中,因为我怀疑该请求会返回错误代码。

如果您最终要在线使用此功能,我建议您将xml文件上传到某处并尝试从那里加载,以查看是否有效。 (如果您正在运行本地Web服务器,“某处”可能是您自己的计算机,但您必须使用“真实”URL链接到它,例如localhost:8080 / something / test.xml)。