我试图让通过AJAX API调用,当结果是牵强,我不断收到此错误:
Uncaught ReferenceError: $sum_of_nums is not defined
如果您查看下面的JSON数据,您会在数据本身中看到$sum_of_nums
变量。
// JSON data
"results":[{
"name": "Some Name",
"TotalCost": $sum_of_nums.TotalCost
}]
$(document).ready(function(){
var data = {
"company": "SomeCompanyName",
"companyCode": @Html.Raw(Json.Encode(Model.CompanyId))
};
var url = "URL_VALUE_HERE";
$.ajax({
url: url,
crossDomain: true,
dataType: "json",
data: data,
error:function(e){
alert("nope" + e);
},
success: function (xhr_request) {
$("#Container").html("<pre>" + JSON.stringify(xhr_request["results"], undefined, 2) + "</pre>");
});
}
});
});
我真的不知道为什么这个错误发生,这意味着我不知道如果我正确地分析这些数据。
任何帮助将不胜感激!
返回的JSON解析变量名
$sum_of_nums
无效。您需要实际将该值放入JSON本身 - 而不是变量引用。请注意,你不需要再次调用'JSON.stringify'。当你指定'dataType:'json''时,jQuery已经对你的响应进行了反序列化。你也不需要设置'crossDomain:true'。没有关于这是跨域。最后,您的JS代码在'success'处理程序中还有一个额外的关闭'})' –