gpt4 book ai didi

javascript - JQuery 异步成功

转载 作者:行者123 更新时间:2023-12-03 12:40:21 24 4
gpt4 key购买 nike

我在函数中有以下逻辑,需要根据 ajax 调用返回的数据返回一个值,但是,我需要在 success 函数之后进行处理。

var result;
console.log("First");
$.ajax ({
dataType: "jsonp",
url: url,
async: false,
success: function(data) {
result = data;
console.log("Result: " + result);
console.log("Second");
},
error: function(err) {
console.log(JSON.stringify(err))
}
});
console.log("Third");

console.log("Data: " + result);

我希望在控制台中看到以下内容

第一结果:[对象对象]第二第三数据:[对象对象]

但是,我在控制台中看到以下内容第一的第三数据:未定义结果:[对象对象]第二次

看起来它实际上是异步执行的,或者更确切地说,当它需要调用成功函数时,它是异步执行的。

我尝试通过添加 async: false 使其不异步。有没有办法让 ajax 调用在 success 函数执行后执行以下代码。我想根据返回到容纳此 ajax 调用的函数的数据返回一个 bool 值。

查看论坛,我可以找到类似的情况,但他们没有询问我有关在 ajax 调用和 success 函数之后执行代码的具体问题。

最佳答案

数据类型jsonp不支持async:false

https://api.jquery.com/jQuery.ajax/跨域请求和dataType:“jsonp”请求不支持同步操作。

现在您知道了,应该很容易解决这个问题。

关于javascript - JQuery 异步成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23553752/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com