我有这个函数执行给定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看起来像是成功的。那么为什么成功函数似乎没有被调用呢?谢谢!
修改
这就是它的样子:
浏览器中的控制台为空白
答案 0 :(得分:0)
如果ajax请求返回XML数据,则需要将dataType
设置为“xml”。
此时,data
函数中的success
对象是XML片段,而不是javascript对象,您需要对其进行处理。 data.name
属性不存在。