Ajax GET请求,为什么成功函数不打印?

时间:2013-11-30 12:33:44

标签: javascript jquery ajax get

我有这个函数执行给定id的GET请求:

var findById= function(id) {
    console.log('findById: ' + id);
    $.ajax({
        type: 'GET',
        url: rootURL + '/' + id,
        dataType: "json",
        success: function(data){
            console.log('findById success: ' + data.name);
            currentRaceEntry = data;
            renderList(currentRaceEntry);
        }
    });
};

当我输入sitename/rest/entries/8时,它返回一个页面,其中包含所请求对象的xml(如预期的那样)。 (我可以显示这段代码,但我不认为问题存在)。当我预先形成此请求时,控制台显示:

findById 8

我的问题是为什么不显示console.log('findById success: ' + data.name);?浏览器中显示的xml看起来像是成功的。那么为什么成功函数似乎没有被调用呢?谢谢!

修改

这就是它的样子:

enter image description here

浏览器中的控制台为空白

1 个答案:

答案 0 :(得分:0)

如果ajax请求返回XML数据,则需要将dataType设置为“xml”。

此时,data函数中的success对象是XML片段,而不是javascript对象,您需要对其进行处理。 data.name属性不存在。