【发布时间】:2012-08-01 17:40:52
【问题描述】:
可能重复:
How can I get jQuery to perform a synchronous, rather than asynchronous, AJAX request?
Get a variable after ajax done
以下代码中的两个警报函数返回不同的结果。我也试图让第二个评估真实。任何帮助表示赞赏..谢谢..
var array;
$.get('php/getstocklist.php', function(data){
array = data;
alert($.isArray(array)); //alerts true
}, "json");
alert($.isArray(array)); //alerts false
【问题讨论】:
-
欢迎来到 async 的精彩世界!你不能那样做。
-
虽然技术上正确,但该评论并没有真正的帮助。您可能应该多解释一下为什么它不能按他期望的方式工作。
-
也许还有另一个答案,但我不明白你想要完成什么。什么是假设是警报。一个是假的,另一个不是。
-
@Elliott — 回调函数内部的那个分配了
data。最后一行在 HTTP 响应返回之前执行,所以仍然是undefined。 -
你是不是想看看 $get 是否已经被第二个警报执行了?
标签: javascript jquery arrays scope