JavaScript-ajax同步 async: false,无效

发布于 2016-11-09 10:25:06 字数 267 浏览 1176 评论 2

代码如下:

var json;
$.ajax({type: "POST",
url: url,
dataType: "json",
async: false,
success: function(msg){
json = eval(msg);
}
});
alert(0);
return json;

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

偏爱自由 2017-09-20 00:02:39

我在我的firefox21.0/firebug1.11.4里试了一遍, jquery.ajax, async: false工作的很好. 会不会是浏览器的问题? jquery版本多少?

另外请试试这段代码可不可以,谢谢.

var json=$.ajax({
type: "POST",
url: url,
dataType: "json",
async: false
}).responseText;
return eval(json);

想挽留 2017-08-12 04:32:56

代码是顺序执行的,但是ajax是异步的,当return的时候,ajax还没返回,所以你的json是undefined,楼上测试可行,是因为,你本地速度快,刚好return 的时候,ajax已经返回了。

当我没说,没看到 async

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文