-2

我试图简单地从 jQuery $.get() 调用中获取响应,并将其存储到变量中。事实证明,这比我想象的要困难得多。这是我的代码:

var response;
    $.get(("action.php?action=addFolder&folderName=" + input),  
        function(data, status){
             response = data
        }
    );
return response;

但响应总是未定义或为空。我怎样才能解决这个问题?

4

1 回答 1

5

这是因为 ajax 是异步的。这意味着 ajaxcall 仍在做它的事情,并且您已经准备好返回“响应”。

如果您需要对某事(我有点假设)进行“响应”,请在 ajaxcall 的 oncomplete 中对其进行处理。您在 get 中使用的函数是触发 oncomplete 的函数。

为那些不明白我的意思的人更清楚地说明异步*:

您创建变量“响应”。之后,ajax 就开始了。之后,您将其退回。该列表中的重要内容是它在 ajax 启动后返回。如果 ajax 需要 5 秒,则该变量将在 5 秒后获得它的值。

*这很简单

于 2013-08-06T19:29:01.133 回答