Javascript Jquery回调在done success函数中不起作用
在发布到服务器时:我得到了jsonp({“代码”:“680”,“国家”:“英国”,“状态”:“公民”});i、 我试图了解国家的价值 我试图创建自己的jsonp函数来访问它Javascript Jquery回调在done success函数中不起作用,javascript,jquery,Javascript,Jquery,在发布到服务器时:我得到了jsonp({“代码”:“680”,“国家”:“英国”,“状态”:“公民”});i、 我试图了解国家的价值 我试图创建自己的jsonp函数来访问它 done(function (result, status, xhr){ console.log(result); //log result is: //jsonp({"code":"680","country":"UK","status":"Citizen"}); transfer
done(function (result, status, xhr){
console.log(result);
//log result is:
//jsonp({"code":"680","country":"UK","status":"Citizen"});
transfer(result);
})
//outside of jquery call; i have this outside the click function.
function transfer(result){
var xyz = result;
function jsonp(xyz){
alert(xyz.country);
}
}
我无法在jquerydone函数中访问该县。;
在nuetral脚本中,这可以工作,即创建用于测试的html文件
<script>
var result = jsonp({"code":"680","country":"UK","status":"Citizen"});
jsonp(result){
alert(result.country); // alert is UK
console.log(result.country); //result is UK.
}
</script>
var result=jsonp({“code”:“680”,“country”:“UK”,“status”:“Citizen”});
jsonp(结果){
警报(result.country);//警报在英国
console.log(result.country);//结果是英国。
}
谢谢。你可以这样做
done(函数(结果、状态、xhr){
控制台日志(结果);
//日志结果为:
//jsonp({“代码”:“680”,“国家”:“英国”,“地位”:“公民”});
评价(结果);
})
函数jsonp(xyz){
警报(xyz.国家);
}
我不清楚您的目标,函数jsonp在哪里?我认为结果是来自服务器响应的字符串。因此,您需要使用eval或exec来调用该函数。如果您接收到JSONP格式的响应,则需要在$.ajax()
调用'JSONP'
中设置数据类型。然后jQuery将为您反序列化对象,完全避免您现在遇到的问题这是否回答了您的问题@塑料,我的意思是从服务器返回后:jsonp({“代码”:“680”,“国家”:“英国”,“状态”:“公民”});我想进入这个国家。i、 e英国。在成功的内部。查看返回的响应,我创建了一个函数jsonp(obj){console.log(obj.country);}。总之什么也没发生,没有安慰,没有警告。谢谢。eval
几乎不是正确答案。对于从服务中检索到的代码,这永远不是正确的答案。@HereticMonkey我鼓励您帮助获得正确答案,这样每个人都会知道正确答案。谢谢。我相信他和其他很多人,如果OP在这个问题上提供了足够的信息,提供了一个好的、可行的解决方案,他们会的。可惜没有。