我的ajax出了问题,这是我的代码
var sortTable = function() {
$("#tableid tbody tr").detach().sort(function(a, b) {
var dataA = $(a).find("td:eq(3)").text().trim();
var dataB = $(b).find("td:eq(3)").text().trim();
return parseFloat(dataA.substring(1)) - parseFloat(dataB.substring(
1));
}).appendTo('#tableid');
};
// var contentType ="application/x-www-form-urlencoded; charset=utf-8";
//
// if(window.XDomainRequest) contentType = "text/plain";
$.ajax({
beforeSend: function (xhr){
xhr.setRequestHeader("Content-Type","application/json");
xhr.setRequestHeader("Accept","application/json");
},
type: 'GET',
crossDomain: true,
dataType: 'jsonp',
url: 'Url here' + var,
success: function(json) {
//var json = $.parseJSON(data);
for (var i = 0; i < json.results.length; i++) {
var section = json.results[i].name;
var tid = json.results[i].Id.slice(1);
var price = json.results[i].minPrice;
var url = json.results[i].url;
var button =
"<a class='btn btn-info'>Buy Now</a>";
$("#tableid").append("<tr><td><img id='theImg' src='/assets/logo.png'/></td><td><b>" + section +
"</b></td><td><b> In Stock </b></td><td><b>£" + price + "</b></td><td><b>N/A</b></td><td><b>£" + price +"</b></td><td><b>" + button + "</b></td></tr>");
$("#tableid").find(".btn.btn-info").click(function() {
location.href = $(this).attr("data-url");
});
}
sortTable();
},
error: function(error) {
console.log(error);
}
});
现在,当我尝试加载事物(错误和成功中的调试器)时,调试器在错误功能中激活,说明其状态为200等等(数据在邮递员中被拉回)
在控制台中我得到了
Uncaught SyntaxError: Unexpected token :
我该如何解决这个问题?显然没有任何东西被附加在桌子上。
萨姆
答案 0 :(得分:0)
如果你正在使用JSONP,那么响应应该是有效的JavaScript代码,如下所示:
callback({a: 1, b: 2});
虽然在你的情况下可能是:
{a: 1, b: 2}