在Firebug中,我看到了请求,并且所有数据都存在。但是,为了尝试甚至只是对console.log进行简单的警报,他们就完全被绕过了。我到底做错了什么,警报从未被击中?
var feedPage = 1;
var rowsToGet = 10;
$(function() {
var urlString = "cfc/getFeed.cfc?method=" + 'getFeed' + "&page=" + feedPage + "&rows=" + rowsToGet + "&userID=" + 2;
$.get(urlString, function(jsonData) {
alert(jsonData); // never happens
},"json");
//displayResults(feedData,feedPage,rowsToGet);
});
答案 0 :(得分:2)
为您的ajax调用添加一个错误处理程序,以查看它失败的原因。
var feedPage = 1;
var rowsToGet = 10;
$(function() {
var urlString = "cfc/getFeed.cfc?method=" + 'getFeed' + "&page=" + feedPage + "&rows=" + rowsToGet + "&userID=" + 2;
$.ajax({
url: urlString,
type: "GET",
dataType: "json",
// remove everything before the opening bracket
dataFilter: function(data) {
return data.replace(/^.+(\[|\{)/,"$1");
},
success: function(jsonData) {
//alert(jsonData); // never happens
console.log(jsonData);
//displayResults(feedData,feedPage,rowsToGet);
},
error: function(w,t,f) {
//alert(w + "\n" + t + "\n" + f);
console.log(arguments);
});
});
});
答案 1 :(得分:0)
这很可能是因为返回数据不是有效的JSON字符串。 尝试console.logging而不在$ .get调用结束时将数据类型指定为“json”。