抱歉,我知道我的问题以不同的形式问过很多人,但我很失望找到我的问题的决定。
function testAjax(){
var result = "";
$.ajax({
type: "POST",
dataType: 'jsonp',
url: "https://api.novaposhta.ua/v2.0/json/",
data: {
"modelName": "Address",
"calledMethod": "getCities",
"methodProperties": {},
"apiKey": "6f94a6391cb5134ee68ddb7924de2a3d"
},
success: function(msg) { result = msg }});
return result;
}
var kor = testAjax();
console.log(kor);
我需要从 ajax 请求中取出 data
并将这个 data
分配给一个全局变量。但是函数 testAjax
什么都不返回。我认为 testAjax
不返回任何内容,因为它是对服务器的异步请求,并且比 return result
晚完成。
我的问题 - 如何从 $.ajax()
中取出一个值并将该值赋给一个全局变量?我尝试谷歌搜索并尝试解决这个问题,但是......
最佳答案
是的,您的预感是正确的 - 该函数返回的 result
是一个空字符串,因为稍后在返回服务器响应时会调用成功处理程序。如果您希望在收到响应时做一些特定的事情,请在成功响应处理程序中这样做:
...
success: function(msg) {
// now you have the response so do something with it
console.log(msg);
}
...
关于javascript - 从ajax请求中获取值并赋予全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39214872/