gpt4 book ai didi

Jquery:返回之前等待回调

转载 作者:行者123 更新时间:2023-12-03 22:38:17 25 4
gpt4 key购买 nike

我有一个 javascript 函数,它请求一些 ajax 数据并返回一个 JSON 对象。然后它应该返回该对象。

问题是我不知道如何让函数从 Ajax 回调中返回。当然

myFunction: function() {
$.get(myUrl, function(data) {
return data;
});
}

不起作用,因为返回的是内部函数而不是外部函数。

另一方面,在回调中执行我需要的内容会破坏我的 MVC 分割:此代码位于模型中,我想在 Controller 中使用结果对象。

临时解决方法是

myFunction: function() {
var result = $.ajax({
url: myUrl,
async: true,
dataType: 'text'
}).responseText;
return eval(result);
}

它的缺点是在等待回复时阻塞浏览器(并使用 eval,我宁愿避免)。

还有其他解决办法吗?

最佳答案

您可以将回调传递给您的函数,以便在数据准备好时处理数据:

myFunction: function(callback) {
$.get(myUrl, function(data) {
callback( data );
});
}

关于Jquery:返回之前等待回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2081807/

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