JavaScript-Javascript中 AJAX回调函数的变量作用域的问题

发布于 2016-11-04 04:18:35 字数 252 浏览 1244 评论 1

最近的项目一直都有用到Ajax,所以碰到很多奇怪的问题。
表单代码:

<form action="<?php echo base_url('shops/update_shop');?>" method="post" id="shopFormEdit" onsubmit="return checkShop(this);">
<!-- ... 表单 ... -->
</form>

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

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

发布评论

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

评论(1

甜柠檬 2017-03-22 19:33:07

你没有理解js的事件驱动 和 ajax的异步执行机理.
程序执行过程应该是这样的:

onSubmit事件 -> checkEditShop -> post2() -> 注册ajax事件响应函数
ajax调用返回事件 -> xmlhttp.onreadystatechange()
所以ajax响应函数代码 是在 checkEditShop()返回之后才执行.

类似的问题有:
@ajax调用后为什么要等待一会儿才能正常显示?
@jquery ajax回调函数返回值如何赋值给其他变量

多看几个问题, 理解一下原理吧.

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